我有一个简单模型的小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/

10-11 08:41