如何告诉Django在syncdb上包含我的模型的表?

时间:2013-12-11 19:56:19

标签: python django django-models django-syncdb

我怀疑我没有将模型导入到需要报告的某个地方,以便syncdb接收它们。

我需要在哪里导入models.py(或以其他方式注册我的模型),以便Django将它们包含在syncdb中?

在models.py中,我有:

from django.contrib.auth.models import User
from django.db import models

class CalendarEntry(models.Model):
    description = models.TextField()
    interval = models.IntegerField()
    regular_expression = models.TextField(blank = True)
    scratchpad = models.TextField()
    should_hide = models.BooleanField()
    user = models.ForeignKey(User)
...

当我尝试运行syncdb时,它不会创建任何表;数据库是空的。

christos@christos-virtual-machine:~/dashboard > python manage.py syncdb
Creating tables ...
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
christos@christos-virtual-machine:~/dashboard > sqlite3 *.db
SQLite version 3.7.15.2 2013-01-09 11:53:05
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
sqlite>

我可以/应该做什么,以便syncdb适当地填充数据库?

1 个答案:

答案 0 :(得分:3)

该应用是INSTALLED_APPS吗? 另请注意,syncdb不会填充表格。它只会创建它们。