2011-09-04 28 views
3

對於django來說我很新,並且試圖在要創建的網站之一中使用flatpage模塊。我可以爲管理員用戶設置所有內容,以便使用flatpage模塊創建頁面,但現在的問題是我想更改顯示在管理控制檯上的顯示頁面名稱,使其適合最終用戶。例如,像「管理靜態頁面」或類似的名稱。從文檔中我可以理解,META類是需要用來更改標籤的,但我不知道如何使用它以及在何處使用它。請幫幫我。由於將Django Flatpage標籤更改爲Django管理控制檯中的另一個名稱

回答

2

我是很新的Django的,太多,但這裏是我的嘗試:

在你的models.py,你需要重寫的簡單頁面的模式,提供自己的Meta類,所以你應該請執行以下操作:

from django.contrib.flatpages.models import FlatPage 


class MyFlatPage(FlatPage): 

    class Meta: 
     verbose_name = 'Static Page' # your overridden name here 

這會爲您的模型設置名稱,該名稱將顯示在管理員中。然後您必須註冊才能出現在管理員中。

from myapp.models import MyFlatPage 
from django.contrib.flatpages.models import FlatPage 


admin.site.unregister(FlatPage) 
admin.site.register(MyFlatPage, admin.ModelAdmin) 

然後您應該被設置!再次,有人可能能夠更好地回答。我還在學習!

+0

但是,這會將「靜態頁面」放入應用程序的名稱空間中,您將其定義爲models.py。 – Thomas

+1

感謝alol,您的建議幫助我更改了名稱,但點擊了flatpages(現在使用了新名稱)鏈接,拋出一個錯誤,說沒有找到表。正如我在我的問題中所說的,我不確定在哪裏添加特定於Flatpages的代碼(或任何其他內部構建的django應用程序)。所以我做的是創建一個名爲common的APP,然後創建了一個model.py和admin.py,並在其中添加了代碼。我相信這不是要走的路,但同時我不知道應該在哪裏添加上述models.py和admin.py文件。對這些事情的任何投入都會對我有很大的幫助。謝謝 – swaroop

+0

@swarwoop - 好點。不知道你的常見應用程序的想法是最好的,但它對我來說似乎合理。我一直在爲這個想法而努力。到目前爲止,Django文檔很薄,所以我正在尋找任何我能找到的方法。謝謝。 – nicorellius