2016-07-05 81 views
0

我已经详细阅读了如何更改Django的管理站点。我主要想到了 - 我想。然而,在我的理解中,仍然有一些东西无法回避。我正在使用默认注册管理网址;所以他们没有定制,只有自动曝光的东西。更改django管理门户的列表视图

解释这是通过图像最简单的方法...

这是我有: original admin layout

这是我想要的东西: enter image description here

我相当肯定的更改应相当简单。但我不知道究竟要更改哪个模型和模板来调整以使其看起来如何。 [编号] - [名称]是我模型中的字段。

我已经扩展了管理界面的其他部分,以获取自定义表单来编辑特定元素 - 通过注册我的模型并为其定制字段。

@admin.register(Course) 
class CourseAdmin(admin.ModelAdmin): 
    form = CourseAdminForm 

    fieldsets = (
     ('Course Info:', {'fields': ('course_number', 'name', 'description', 'units')}), 
     ('Load Info:', {'fields': ('lecture_hours', 'lab_hours', 'discussion_hours', 'work_hours')}) 
    ) 

在我的app/admin.py文件中。

我有点困惑,因为在技术上这不是一个模型在这里注册。所以我不是100%确定如何做到这一点。是否将我的所有修改作为具有注册URL的不同类/方法在CourseAdmin类中包装,或者是否有其他方式需要执行此操作?

回答

1

你需要编辑Course模型类:

# models.py 
class Course(models.Model): 

    # fields here 
    name = ... 
    # ... 

    # add a unicode method 
    # __str__ method if you are using python 3.x 
    def unicode(self): 
     return '%s - %s' % (self.pk, self.name) 
+0

这个工作。我是否在文档中错过了这些? – lilott8

+1

@ lilott8你可以在这里找到相关的文档 - > https://docs.djangoproject.com/en/1.8/ref/models/instances/#unicode – Gocht

+0

谢谢。我不会考虑查看模型文档以影响管理部分中的更改。我很欣赏答案和文档。 – lilott8