当我在 django 管理中创建任何对象时遇到问题。它向我显示了这个错误:LINE 1: SELECT (1) AS "a" FROM "license_portal_client" WHERE这是我的Dockerfile:FROM python:3ENV PYTHONUNBUFFERED 1RUN mkdir /codeWORKDIR /codeCOPY requirements.txt /code/RUN pip install -r requirements.txtCOPY . /code/这是我的docker-compose.yml:version: '3' services: db: image: postgres environment: - POSTGRES_DB=postgres - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres web: build: . command: python license_portal/manage.py runserver 0.0.0.0:8000 volumes: - .:/code ports: - "8000:8000" depends_on: - db我的数据库settings.py和我已将我的应用程序添加到已安装的应用程序中:DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'postgres', 'USER': 'postgres', 'PASSWORD': 'postgres', 'HOST': 'db', 'PORT': 5432, }}这是我的models.py:from django.db import modelsclass Person(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=30) 还有我的admin.py:from django.contrib import adminfrom license_portal.models import Personadmin.site.register(Person)
1 回答
慕少森
TA贡献2019条经验 获得超9个赞
这可能是由于您的数据库未迁移。尝试从 django 容器内运行 django migrate 命令,并停止您可能拥有的任何现有数据库连接——例如web运行开发服务器的容器。
# Stop all of the running containers to release all db connections
docker-compose stop
# Run the migrate command inside of the django container
docker-compose run web python license_portal/manage.py migrate
# Start all of the containers again to access your dev server
docker-compose up web
添加回答
举报
0/150
提交
取消