2014-04-01 53 views
1

對此有任何建議嗎?如何將在models.py中創建的新類添加到admin.py(django)

起初我在models.py

這是admin.py的代碼是什麼樣子

from django.contrib import admin 
from booknowapp.models import Customer 

# Register your models here. 
admin.site.register(Customer) 

現在,我已經添加了兩個新的類模型我如何在管理登記等新的二過Customer():類類出現在應用程序中?我不確定要使用的語法。

+0

你可以每個類都調用一次'admin.site.register'。 – elbear

回答

1

如果你的模型增加了兩個新類是ModelClass1ModelClass2那麼您可以在admin.py像註冊多個型號:

from django.contrib import admin 
from booknowapp.models import Customer, ModelClass1, ModelClass2 

myModels = [Customer, ModelClass1, ModelClass2] # iterable list 
admin.site.register(myModels) 

OR

你可以重複admin.site.register其他兩個新就像你的Customer一樣。

+1

非常感謝Priyank。我已經通過了Customer,ModelClass1,ModelsClass2,admin.site.register(Customer,ModelClass1,ModelsClass2)我收到了錯誤消息。謝謝噸:) – Rads

+0

任何時候@Rads。 :) –

0

如果要擴展您已經使用的語法,它僅僅是:

from django.contrib import admin 
# wrap the line if it's too long 
from booknowapp.models import (
    Customer, 
    SecondModel, 
    ThirdModel 
) 

# Register your models here. 
admin.site.register(Customer) 
admin.site.register(SecondModel) 
admin.site.register(ThirdModel) 

然而,這隻會給你默認的admin模型列表視圖 - 你可能會想延長。

class CustomerAdmin(admin.ModelAdmin): 
    """Specialised admin view for the Customer model.""" 
    # set the fields to display 
    list_display = ('name', 'address', 'registered') 

# register your Customer model, using the CustomerAdmin view 
admin.site.register(Customer, CustomerAdmin) 

的的ModelAdmin有很多更多的功能,你可以利用 - 搜索領域,過濾,自定義字段,自定義操作(「激活用戶」),你可以讀到這裏 - http://www.djangobook.com/en/2.0/chapter06.html#custom-modeladmin-classes

+0

謝謝您的建議和鏈接雨果。這很有幫助。 – Rads

相關問題