由于在Django中定义“app_label”META而未创建数据库

时间:2011-11-25 05:10:50

标签: python database django meta

我在Django(1.3)中设计了一个简单的模型,它有3个字段和一些META选项。

class DataSource(models.Model):
    title           = models.CharField(max_length=255)
    priority        = models.IntegerField(unique=True)
    read_only       = models.BooleanField(default = False)

    class Meta:
        verbose_name = "Data Source"
        verbose_name_plural = "Data Sources"
        app_label = 'My Admin'

现在,当我syncdb时,数据库中没有创建此模型的表。

可能是什么原因?

我应该将其删除吗?

如果我想保留它,解决方案是什么?

1 个答案:

答案 0 :(得分:2)

Read the documentation:

  

app_label

     

如果模型存在于标准models.py之外(例如,如果应用程序的模型位于myapp.models的子模块中),则模型必须定义它所属的应用程序:

app_label = 'myapp'

app_label必须是应用名称。您没有名为“我的管理员”的应用。