首页 > 解决方案 > Postgres的双引号问题

问题描述

我正在将 Django 与 postgres 一起使用。这是我用来在数据库中创建表的代码片段。

class user(models.Model):
    user_id = models.IntegerField(primary_key=True)
    username = models.CharField(max_length=30)
    password = models.CharField(max_length=30)
    role_id = models.ForeignKey(role,on_delete=models.CASCADE)
    class Meta:
        db_table = 'user'

我的问题是:

  1. 为什么用户表被重命名为“用户”(带引号)
  2. 为什么将role_id 命名为role_id_id,而我已经明确提到role_id 是我的列名? 在此处输入图像描述

标签: sqldjangodatabasepostgresql

解决方案


问题是您的应用名称包含大写字母,您的应用名称必须全部小写

例子:

应用程序名称:Main_app + 表名称:用户 --> 数据库表:Main_app.user

应用程序名称:main_app + 表名称:用户 --> 数据库表:main_app.user


推荐阅读