Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вызвать метод __get__ 
:(
    Опции темы
DissDoc
Дата 5.11.2011, 15:14 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 463
Регистрация: 13.7.2006

Репутация: нет
Всего: нет



Давайте вначале "поле" класса покажу
Код

class Field(object):
    def __init__(self):
        self.value = None
    def __get__(self, instance, owner):
        return self.value
    def __set__(self, instance, value):
        self.value = value

Тут я думаю ничего объяснять не стоит. Сам класс тоже простой
Код

class Test(myModel):
    field = Field()

Где myModel - это моя модель, которая идет от метакласса, думаю это пока опустим. Ну и вызов
Код

t = Test()
t.field = 'hi, me!'

Все прекрасно. Вопрос вот в чем заключается. Когда я вызываю в своем классе родителе параметр field, мне возвращается значение такое <...Field object at 0xb65...>
Вызов такое приблизительно (максимально упрощенно, чтобы показать что делаю)
Код

print self.__class__._params['field']

Как мне заставить не объект выводить, а чтобы вызывался метод __get__? 
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0363 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.