【发布时间】:2021-01-21 01:00:24
【问题描述】:
我想在 DigitalOcean 服务器上使用 Postgres 数据库为我的 Django 项目添加新功能。问题是,在本地服务器上一切正常,但在生产服务器上,新模型的新表没有创建。我已删除所有迁移文件,再次进行迁移,但再次无法在数据库中看到新表。请帮我解决这个问题。我的确切错误:
relation "documents_app_employee" does not exist LINE 1: INSERT INTO "documents_app_employee" ("fin", "name", "surnam...
这是我的代码:
models.py:
class Employee(models.Model):
fin = models.CharField(max_length=10, blank=True, null=True)
name = models.CharField(max_length=20)
surname = models.CharField(max_length=20)
def __str__(self):
return self.name + " " + self.surname
forms.py:
class CreateEmployeeForm(ModelForm):
def save(self, commit=False):
employee = super(CreateEmployeeForm, self).save(commit=False)
Employee.objects.create(
fin = employee.fin,
name = employee.name,
surname = employee.surname,
)
class Meta:
model = Employee
fields = '__all__'
删除和撤消迁移的脚本:
find . -path "*/migrations/*.py" -not -name "__init__.py" -delete
find . -path "*/migrations/*.pyc" -delete
pip3 uninstall django
pip3 install -r requirements.txt
python3 manage.py makemigrations
python3 manage.py migrate
但又得到:
ProgrammingError at /employee_document
relation "documents_app_employee" does not exist
LINE 1: INSERT INTO "documents_app_employee" ("fin", "name", "surnam...
【问题讨论】:
标签: django postgresql django-forms digital-ocean django-migrations