дорогой всеЧто такое магия за ndb.Model constructor?
Это был предел для меня, чтобы знать, что я могу использовать первоначальные свойства модели ndb, как показано ниже. Мне просто нужно использовать аргументы ключевого слова при создании нового экземпляра моего класса сущности.
class MyModel(ndb.Model):
foo = ndb.StringProperty()
bar = ndb.StringProperty()
baz = ndb.StringProperty()
model_instance = MyModel(foo='foo', bar='bar', baz='baz')
Это путало меня, потому что я не создал конструктора в своем классе. Как Python знает, как установить свойство без конструктора?
Спасибо!
И есть другое поведение под капотом, так как используются метаклассы. Я также хотел бы сказать, что не переоценивать метод __init__, если вы ДЕЙСТВИТЕЛЬНО не знаете, что делаете. –