Ну class_object это неизвестное имя, а в декларации класса буквально синтаксические ошибки, например, незакрытая скобка def setX(self, :
"не работает" это уровень пользователя. Вы программист или где? Какую конкретно ошибку или неожиданное поведение вы наблюдаете?
IRO>понятно что дело в Engine.Entity но
Re[2]: [Python] не работают проперти в embedded классе
Ну да опечатки при копирования это самое оно. Ок, приношу извенения, не углядел.
class_object = Class() — или у программиста могут быть другие варианты? — будем разжовывать.
T>"не работает" это уровень пользователя. Вы программист или где? Какую конкретно ошибку или неожиданное поведение вы наблюдаете?
не вызывается функция set. вместо этого у данного обьекта создается поле X ему присваевается значение.
я не волшебник, я только учусь!
Re[3]: [Python] не работают проперти в embedded классе
IRO>Ну да опечатки при копирования это самое оно. Ок, приношу извенения, не углядел. IRO>class_object = Class() — или у программиста могут быть другие варианты? — будем разжовывать.
Могут, я уже говорил, если не написать class_object = Class(), то "оно тоже не работает". Откуда кому-то кроме вас может быть известно что там *на самом деле написано*?
T>>"не работает" это уровень пользователя. Вы программист или где? Какую конкретно ошибку или неожиданное поведение вы наблюдаете? IRO>не вызывается функция set. вместо этого у данного обьекта создается поле X ему присваевается значение.
Значит, либо вы чего-то недоскопировали (скорее всего), либо, действительно проблема в родительском классе — давайте его код. Но это очень вряд ли, потому в вашем куске нет кода, который вызывает что-то у родителя, единственный вариант тогда остаётся, что Engine.Entity имеет какой-то хитрый метакласс, который играет с полями. В любом случае нужен код Engine.Entity, чтобы сказать наверняка.
Re: [Python] не работают проперти в embedded классе
Здравствуйте, FR, Вы писали:
FR>Здравствуйте, IROV.., Вы писали:
IRO>>не работает, какие могут быть причины? IRO>>понятно что дело в Engine.Entity но
FR>Класс должен быть нового типа то есть прямо или косвенно наследоваться от object.
На самом деле, не обязательно.
Причину я нашел, embedding класса Entity был с перегружеными set и get и там забыли прописать PyObject_GenericSetAttr и PyObject_GenericGetAttr.