我有一个简单模型的小Django项目。但是,我决定手动创建数据库,并通过python manage.py syncdb
映射表,而不是通过Meta
创建数据库,如下所示
class Item(models.Model):
name = models.CharField(max_length=50)
class Meta:
managed = False
db_table = 'ITEM'
但这不管用。当我启动开发服务器并运行主视图时,Django抛出一个错误,称数据库中不存在名为“cc>”的关系,而实际上它确实存在。
我做过一些研究,但找不到有这种问题的人。有办法让它工作吗?
最佳答案
Postgres将表名转换为小写字母,除非查询周围有引号。例如,请参见:
http://binodsblog.blogspot.com/2011/02/postgresql-is-case-sensitive.html
通常,ORM会将这些细节抽象出来,但如果不使用syncdb,则必须对其进行管理。
关于python - 使用不带syncdb的Django时出现“未找到关系”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21419423/