我使用Django 1.6作爲後端,我想要做的就是讓用戶在觀看視頻時編寫他們的評論。我寫的領域如何在後端顯示Django時間戳
datetime = models.DateTimeField(auto_now_add=True)
在model.py,但在Django的後端,我沒有看到這個專欄,我怎樣才能讓它顯示在我的管理員?謝謝!
我使用Django 1.6作爲後端,我想要做的就是讓用戶在觀看視頻時編寫他們的評論。我寫的領域如何在後端顯示Django時間戳
datetime = models.DateTimeField(auto_now_add=True)
在model.py,但在Django的後端,我沒有看到這個專欄,我怎樣才能讓它顯示在我的管理員?謝謝!
只需添加readonly_fields
選項,你admin.py的:
class CommentAdmin(admin.ModelAdmin):
readonly_fields = ('datetime',)
如果你在你管理類中定義fields
選項,還必須添加datetime
到fields
選項:
class CommentAdmin(admin.ModelAdmin):
# display datetime in the changelist
list_display = ('id', 'title', 'datetime')
# display datetime when you edit comments
readonly_fields = ('datetime',)
# optional, use only if you need custom ordering of the fields
fields = ('title', 'body', 'datetime')
admin.site.register(Comment, CommentAdmin)
欲瞭解更多信息,請參閱: https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#django.contrib.admin.ModelAdmin.readonly_fields
I仍然不明白爲什麼我看不到這個專欄,我們可以在哪裏修改網站管理員的顯示? –
您目前的評論管理員級別如何? – ozren1983
類似於'from django.contrib import admin from myapp.models import * admin.site.register(Comment)' –
您可以設定模型的領域在管理員將其添加到的ModelAdmin(在admin.py模型的應用程序)顯示:
from myapp.models import MyModel
class MyModelAdmin(admin.ModelAdmin):
list_display = ('datetime',)
admin.site.register(MyModel, MyModelAdmin)
而設定旁邊顯示到外地簡短說明,您需要設置字段的verbose_name
,如下所示(以models.py):
class MyModel(models.Model):
datetime = models.DateTimeField(auto_now_add=True, verbose_name="Uploaded at")
注:你並不需要設置readonly_fields
因爲DateTimeField
與auto_now_add=True
ARG將被默認爲只讀。
你的意思是它在Django admin中不可見? – Mani
是的,我忘記了如何在後端顯示時修改字段名稱,例如,我在model.py中定義了「datetime」,但在後端我們可以將其視爲「日期」 –