私はアイテムのリストに基づいてIntegerFieldを持つモデルを持っています。機能をDjango管理者のフィールドのようにするには?
LIST = (
(0, 'None'),
(1, 'Male'),
(2, 'Female'),
)
class MyModel(models.Model):
gender = models.IntegerField(choices=LIST, default=0)
some_unimportant_value1 ...
some_unimportant_value2 ...
また、ジェンダーにまだ値が割り当てられていない場合は、Falseを返す関数がMyModelクラスにあります。 Djangoの管理区域内MyModelsのリストを表示しているとき
def genderHasValue(self):
if self.gender == 0:
return False
、私はgenderHasValue関数の計算結果を見ることができるようにしたいと思います。たとえば、mymodelというためのDjangoの管理領域は次のようになります。
はsome_unimportant_value1 some_unimportant_value2 genderHasValue
123 456 N
789 012 Y
これはsome_unimportant_value1行はそのIntegerFieldととして0を持っていると仮定して、some_unimportant_value2行は、そのIntegerFieldととして1を有しています。
genderHasValue関数を使用してこれを行うことはできますか?
ありがとうございます。
メソッドを管理クラスに移動する必要はありません。 list_displayで直接モデルメソッドを名前で参照することができます。 –
両方の返信に感謝します。質問:関数に冗長な名前を付けることは可能なのでしょうか? "GENDERHASVALUE"ではなく見出しの値が良いですか? –
@TomBrock:更新された回答を見る –