當我在 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
提交
取消