2010-10-30 53 views
6

在'Class Meta'中使用'app_label'將解決此問題。但是在發出'syncdb'命令時它不會創建表。因爲應用程序名稱與INSTALLED_APPS條目不匹配。有沒有什麼辦法來實現兩者(自定義應用程序的名稱,並執行syncdb創建表格)Django管理界面 - 自定義應用程序名稱

+0

你想要自定義表名嗎?你想達到什麼目的? – 2010-10-30 08:51:50

+0

@Dominic我認爲他想要將出現在管理界面中的應用程序名稱(標籤)更改爲某些自定義名稱。 – 2010-10-30 14:48:03

+0

@Dominic @anand是正確的。我想在管理界面中有自定義的應用程序名稱。 – 2010-10-31 07:12:23

回答

0

我沒有試過,但here存在應當允許改變應用標籤與syncdb工作時的解決方案。

class model_module1(models.model): 
    [...] 

    class Meta: 
     app_label = "Cool module name" 
     db_table = "module1_model" 

class model_module2(models.model): 
    [...] 

    class Meta: 
     app_label = "Cool module name" 
     db_table = "module2_model" 

這是有道理的,因爲表的名稱是由明確的,因此在運行時syncdb沒有guessing。缺點是這兩個Meta選項必須在應用程序的每個模型中指定。