簡體   English   中英

具有editable = False的Django模型,並在Admin中過濾該字段

[英]Django model with editable=False and filter that field in Admin

我有這個模型:

class Values(models.Model):
    ip_given = models.CharField(max_length=250, null=True, blank=True)
    ip_discovered = models.CharField(max_length=250, null=True, blank=True, editable=False)
    time = models.DateTimeField()
    poi = models.ForeignKey(POI, editable=False)
    sensor = models.ForeignKey(Sensor, editable=False)
    value = models.FloatField()

    created_at = models.DateTimeField(auto_now_add=True)

poi和sensor字段是editable = False,因為在創建對象時會自動設置它們。 另一方面,我有這個modelAdmin:

class ValuesAdmin(admin.ModelAdmin):
    list_display = ('id', 'ip_given', 'ip_discovered', 'value', 'time', 'poi', 'sensor')
    list_display_links = ('id',)
    list_filter = ('poi', 'sensor', 'time', 'value')

問題是我可以按時間也可以按值進行過濾,但是poi和sensor未在過濾器部分中顯示。 我認為這是因為editable = False屬性。

有什么方法可以按該字段進行過濾,而無需刪除editable = False屬性?

嘗試類似

list_filter = ('poi__id','sensor__id','time','value') 

您可以使用本手冊頁中討論的關系過濾器來跨關系。

http://docs.djangoproject.com/en/1.7/ref/contrib/admin

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM