class UserInfo(models.Model):
birthday = models.DateField('birthday date')
вроде обычный класс.. наследуется от кого то, содержит какой то мембер..
но dir(UserInfo) этот мембер не показывает, появляется он только у экземпляра класса после инстанцирования..
как можно получить такое поведение?.
в джанге производятся какие то игры с метаклассами (собственно, у models.Model есть __metaclass__), но в этом я пока не разобрался.. может коллективный разум подскажет?.
F>вроде обычный класс.. наследуется от кого то, содержит какой то мембер.. F>но dir(UserInfo) этот мембер не показывает, появляется он только у экземпляра класса после инстанцирования..
F>как можно получить такое поведение?. F>в джанге производятся какие то игры с метаклассами (собственно, у models.Model есть __metaclass__), но в этом я пока не разобрался.. может коллективный разум подскажет?.
Да, метакласс вынимает поля из неймспейса класса и складывает их в специальное место (_meta.fields). Чтобы добиться такого поведения, ммм... надо написать похожий метакласс.
Здравствуйте, neFormal, Вы писали:
F>в джанге производятся какие то игры с метаклассами (собственно, у models.Model есть __metaclass__), но в этом я пока не разобрался.. может коллективный разум подскажет?.
Рекомендую книжку Pro Django — там подобные вещи рассмотрены (ну и вообще книжка практически без "воды")
Здравствуйте, Курилка, Вы писали:
F>>в джанге производятся какие то игры с метаклассами (собственно, у models.Model есть __metaclass__), но в этом я пока не разобрался.. может коллективный разум подскажет?. К>Рекомендую книжку Pro Django — там подобные вещи рассмотрены (ну и вообще книжка практически без "воды")
Здравствуйте, alexeiz, Вы писали:
A>Здравствуйте, Курилка, Вы писали:
К>>Рекомендую книжку Pro Django...
A>Понятно, что книжка про джанго, но какое у неё название?
Pro Django
P.S. Если это был намёк на иронию, то имхо довольно плоский.