我对 Django 和一般的 Web 编程非常陌生。所以,我为这个愚蠢的问题道歉。我使用 django 作为 python 框架,并且已经与我的数据库 Postgresql 建立了连接:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'testdb',
'USER': 'postgres',
'PASSWORD': '****',
'HOST': 'localhost',
'PORT': '5432',
}
}
之后我运行了python manage.py migrate
命令,它输出一切正常。我还创建了模型:
class Albums(models.Model):
artist = models.CharField(max_length=250)
album_title = models.CharField(max_length=500)
genre = models.CharField(max_length=100)
album_logo = models.CharField(max_length=1000)
class Song(models.Model):
albums = models.ForeignKey(Albums, on_delete=models.CASCADE)
file_type = models.CharField(max_length=10)
song_title = models.CharField(max_length=250)
之后,我运行命令 python manage.py makemigrations
,它输出它可以工作。然后,我运行命令 python manage.py migrate
并输出一切正常。
我想知道为什么,当我进入 pgAdmin 中的数据库并使用 SELECT * FROM Albums
查询数据时,它甚至无法识别该关系。
这可能不是测试表是否已创建的正确方法,但是任何人都可以帮助我并告诉我为什么它们不在 pgAdmin UI 中创建吗?
另外,我如何检查表的创建位置?
提前谢谢您。
最佳答案
表名称会有点不同,它不会与模型名称相同。它将是“app_model”。所有字符均为小写。在此示例中,您的查询将是:
SELECT * FROM 'app'_albums
请将“app”替换为您的小写应用名称
正如您所说,您是网络开发新手,请尝试
\dt *.*
这将列出数据库中的所有表。
关于python - 一旦我在 django 中激活模型,为什么我不能直接在 postgresql pgAdmin UI 中查询它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41360568/