请告诉我为什么我不能在Django的管理面板中修改我的模型?
models.py:
from django.db import models
# Create your models here.
class Games(models.Model):
guid = models.CharField(max_length=100, unique=True, null=False, verbose_name="GUID")
title = models.CharField(max_length=100, null=False, verbose_name="Titre")
logo = models.CharField(max_length=100, null=True, blank=True, verbose_name="Logo")
date = models.DateTimeField(auto_now_add=True, auto_now=False, verbose_name="Date de création")
update = models.DateTimeField(auto_now=True, verbose_name="Dernière modification")
admin.py
from django.contrib import admin
from .models import Games
# Register your models here.
class GamesAdmin(admin.ModelAdmin):
list_display = ('logo', 'title', 'guid', 'date', 'update')
list_filter = ('title', 'guid')
date_hierarchy = 'update'
ordering = ('date', )
search_field = ('guid', 'title')
admin.site.register(Games, GamesAdmin)
当我要去管理面板时,我会看到模型的所有字段,我还可以添加一个新字段。但是当我想编辑该字段时,没有可链接的链接......
谢谢!
答案 0 :(得分:1)
只需更换“徽标”的位置即可。和' title'或者' logo'与任何其他非空列。
list_display = ('logo', 'title', 'guid', 'date', 'update')
答案 1 :(得分:1)
默认情况下,第一列应该是可点击的,并带您到视图以更改对象。即使列是空的,Django也会添加一个可点击的不间断空格(
),尽管在将鼠标悬停在其上并且光标发生变化之前,您可能无法发现它。
您可以设置link_display_links
并包含非空字段。
class GamesAdmin(admin.ModelAdmin):
list_display = ('logo', 'title', 'guid', 'date', 'update')
link_display_links = ('title',)
或者,您可以重新排序list_display
,以便第一列不为空。
要使所有列都可以点击,您可以设置link_display_links = list_display
。