0
我有一個基於項目列表的IntegerField模型。如何使一個函數像Django Admin中的字段一樣工作?
LIST = (
(0, 'None'),
(1, 'Male'),
(2, 'Female'),
)
class MyModel(models.Model):
gender = models.IntegerField(choices=LIST, default=0)
some_unimportant_value1 ...
some_unimportant_value2 ...
在MyModel類中還有一個函數,如果性別尚未賦值,則返回False。
def genderHasValue(self):
if self.gender == 0:
return False
當觀看在Django管理區域MyModels的名單,我希望能夠看到genderHasValue函數的計算結果。例如,Django管理區域爲MyModel可能是這樣的:
some_unimportant_value1 some_unimportant_value2 genderHasValue
123 456 N
789 012 Y
這是假設some_unimportant_value1行具有0作爲其IntegerField和some_unimportant_value2行有1作爲IntegerField。
GenderHasValue函數可以做到這一點嗎?
謝謝。
你甚至不需要將該方法移動到管理類;您可以直接在list_display中按名稱引用模型方法。 –
謝謝你的答覆。問題:是否可以給該函數一個詳細的名稱,所以它有一個很好的標題值而不是「GENDERHASVALUE」? –
@TomBrock:查看更新的答案 –