我有一个带有一些变量的类,我当然可以在管理界面中添加更改和删除。我的目标是,使管理界面现在更加用户友好和更明显。我想以列表的形式在页面上显示变量的内容,例如。当我为其他东西编写我的视图和模板时,我只是为我的模板渲染了一个字典,用for标签迭代它并显示数据就像这样:
{% for _name in name %}
<li>{{ name }}</li>
{% endfor %}
我的应用程序的用户将使用admin inerface,我想让它更好地了解用户。我已经在我的项目中获得了模板和样式表,在一个单独的模板和静态目录中。
编辑: 我的班级
class completedTask(models.Model):
trainee = models.ForeignKey(trainee, verbose_name = "Azubi")
learningObjectivecompletedTask = models.ManyToManyField(learningObjective, verbose_name = "Lernziel")
date = models.DateField(verbose_name = 'Datum',blank=True)
duration = models.TimeField(verbose_name = 'Dauer')
documentationReference = models.TextField(verbose_name = 'Dokumentationsverweis')
educationDepartment = models.TextField(verbose_name = 'Ausbildungsabteilung')
class Meta:
verbose_name = "Ausgeführte Tätigkeit"
verbose_name_plural = "Ausgeführte Tätigkeiten"
编辑我的admin.py看起来像这样:
class completedTasks(admin.ModelAdmin):
def get_form(self, request, obj=None, **kwargs):
self.exclude = []
if "Azubi" in request.user.groups.values_list("name", flat=True):
self.exclude.append('trainee')
return super(completedTasks, self).get_form(request, obj, **kwargs)
admin.site.register(completedTask, completedTasks)
我想以管理页面中的列表形式显示每个受训者。
答案 0 :(得分:1)
如果您正在使用内置的Django管理员,则可以使用/admin/myapp/mymodel/
的{{3}}选项在列表视图(即ModelAdmin
)上显示更多信息
例如,在以下列表视图(auth.User
模型)中,您可以看到额外的信息(电子邮件,名字,姓氏,员工......):
在您的情况下,在admin.py
:
class TraineeAdmin(admin.ModelAdmin):
list_display = ['firstName', 'lastName', 'educationBeginning', 'comment',]
admin.site.register(Trainee, TraineeAdmin)