postgresql db で動作するように設計されたクラスがあります。
dbclass = DBclass(1)
class DBclass(object):
select_query = 'SELECT * FROM "{table}" WHERE {table}_id=%s'
def __init__(self, id=None):
self.__id = id
self.__table = self.__class__.__name__.lower()
そして、私は__setattr__
オーバーロードしました:
def __setattr__(self, name, value):
super(DBclass, self).__setattr__(name, value)
self.load()
そして、データベースからコンテンツをロードするために接続するために使用されるメソッド:
def load(self):
# Here I send select query and get two remaining values
これで、初期化と値__setattr__
しかできません。私のデータベースにはロードされていない 2 つのフィールドがまだあります。変数がまだ初期化されておらず、python が load メソッドを呼び出してクエリを送信できないため、それらを使用して初期化できません。__id
__table
__setattr__
__table
__id
おそらく、私は自分の決定に間違ったロジックを入れており、db からの値はそのように開始されるべきではありません。