【问题标题】:django.db.utils.OperationalError: (1050, "Table 'profiles_category' already exists")django.db.utils.OperationalError: (1050, "表 'profiles_category' 已经存在")
【发布时间】:2022-01-20 09:30:44
【问题描述】:

我正在尝试使用 FileZilla 和 PuTTY 托管我的网站。为此,我在 FileZilla 远程站点中添加了代码,并在 PuTTY 应用程序中使用以下命令创建了一个名为 jobs 的数据库。

sudo mysql -u root #For Maria DB
CREATE DATABASE jobs;
GRANT ALL PRIVILEGES ON jobs.*TO 'hello'@'localhost';
flush privileges;
exit

然后python3 manage.py makemigrations 命令被执行,然后当我执行python3 manage.py migrate 命令时,我得到了这样的错误。

django.db.utils.OperationalError: (1050, "Table 'profiles_category' already exists")

这里的表profiles_category 尚不存在。

models.py

class Category(models.Model):
   name = models.CharField(max_length=40)

   def __str__(self):
       return self.name

class CategoryJob(models.Model):
   category = models.ForeignKey(Category, on_delete=models.CASCADE)
   name = models.CharField(max_length=40)

   def __str__(self):
       return self.name

谁能为此提出解决方案?

【问题讨论】:

    标签: python django django-models


    【解决方案1】:

    只需删除 db.sqlite.sql 文件,

    同时删除:所有迁移和缓存

    那么

    python manage.py migrate
    
    python manage.py makemigrations
    

    终于:

    python manage.py migrate --run-syncdb
    

    我遇到过/遇到过类似的问题 - 如果您认为它也可能对您有用。

    【讨论】:

      猜你喜欢
      • 2018-08-26
      • 2020-05-16
      • 1970-01-01
      • 2021-04-08
      • 1970-01-01
      • 1970-01-01
      • 2022-07-09
      • 1970-01-01
      • 2019-11-18
      相关资源
      最近更新 更多