Настройка Meta.fields не делает то, что я ожидаю - PullRequest
0 голосов
/ 18 октября 2011

Звонок set_fields() здесь не делает то, что я ожидал.(Контекст кода - модель django, но я подозреваю, что только что сделал ошибку Python).

class FooEdit(ModelForm):
    class Meta:
        model = Foo
        # Client should call set_fields()
        # fields = ('A', 'B')

def set_fields(self, pro):
    """Set fields correctly for status."""
    if pro:
        self.Meta.fields = ('A', 'B', 'X')
    else:
        self.Meta.fields = ('A', 'Y', 'Z', 'W')

1 Ответ

1 голос
/ 18 октября 2011

Вы устанавливаете свойства класса, используя экземпляр. Например

class A(object):
    a=0

x=A()
print x.a #prints 0
x.a=2
x.a  #prints 2
A.a  #prints 0
...