OperationalError:没有这样的表

And*_*nes 5 migration sqlite django django-migrations

因此,我正在开发应用程序,并在模型中添加了一个slugfield。然后,按照正常进行makemigrations,出现了巨大的红色错误墙。

Traceback (most recent call last):
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\backends\sqlite3\base.py", line 337, in execute
    return Database.Cursor.execute(self, query, params)
sqlite3.OperationalError: no such table: Reader_manga

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Program Files (x86)\JetBrains\PyCharm 2016.2.3\helpers\pycharm\django_manage.py", line 41, in <module>
    run_module(manage_file, None, '__main__', True)
  File "C:\Users\Andreas\AppData\Local\Programs\Python\Python35-32\lib\runpy.py", line 182, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "C:\Users\Andreas\AppData\Local\Programs\Python\Python35-32\lib\runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "C:\Users\Andreas\AppData\Local\Programs\Python\Python35-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "D:/WindowsFolders/Documents/Python/ReaderProject\manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\management\__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\management\__init__.py", line 359, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\management\base.py", line 294, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\management\base.py", line 342, in execute
    self.check()
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\management\base.py", line 374, in check
    include_deployment_checks=include_deployment_checks,
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\management\base.py", line 361, in _run_checks
    return checks.run_checks(**kwargs)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\checks\registry.py", line 81, in run_checks
    new_errors = check(app_configs=app_configs)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\checks\urls.py", line 14, in check_url_config
    return check_resolver(resolver)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\core\checks\urls.py", line 24, in check_resolver
    for pattern in resolver.url_patterns:
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\utils\functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\urls\resolvers.py", line 313, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\utils\functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\urls\resolvers.py", line 306, in urlconf_module
    return import_module(self.urlconf_name)
  File "C:\Users\Andreas\AppData\Local\Programs\Python\Python35-32\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 662, in exec_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
  File "D:/WindowsFolders/Documents/Python/ReaderProject\ReaderProject\urls.py", line 25, in <module>
    from Reader import views
  File "D:/WindowsFolders/Documents/Python/ReaderProject\Reader\views.py", line 7, in <module>
    from .forms import UploadForm
  File "D:/WindowsFolders/Documents/Python/ReaderProject\Reader\forms.py", line 12, in <module>
    class UploadForm(forms.Form):
  File "D:/WindowsFolders/Documents/Python/ReaderProject\Reader\forms.py", line 15, in UploadForm
    for manga in mangas:
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\models\query.py", line 256, in __iter__
    self._fetch_all()
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\models\query.py", line 1087, in _fetch_all
    self._result_cache = list(self.iterator())
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\models\query.py", line 54, in __iter__
    results = compiler.execute_sql()
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\models\sql\compiler.py", line 835, in execute_sql
    cursor.execute(sql, params)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\backends\utils.py", line 79, in execute
    return super(CursorDebugWrapper, self).execute(sql, params)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\Users\Andreas\ReaderProject\lib\site-packages\django\db\backends\sqlite3\base.py", line 337, in execute
    return Database.Cursor.execute(self, query, params)
django.db.utils.OperationalError: no such table: Reader_manga
Run Code Online (Sandbox Code Playgroud)

我试图删除我添加但没有用的字段。我已经做了很多关于stackoverflow的建议。

我也忘记了将项目添加到github,现在也没有原始数据库文件。

出现错误的模型:

class Manga(models.Model):
    COMPLETED = 'COMP'
    ONGOING = 'ONG'
    STATUS_CHOICES = (
        (COMPLETED, 'Completed'),
        (ONGOING, 'Ongoing'),
    )
    JAPANESE_MANGA = 'JM'
    KOREAN_MANGA = 'KM'
    CHINESE_MANGA = 'CM'
    UNKNOWN_MANGA = 'UM'
    TYPE_CHOICES = (
        (JAPANESE_MANGA, 'Japanese Manga'),
        (KOREAN_MANGA, 'Korean Manhwa'),
        (CHINESE_MANGA, 'Chinese Manhua'),
        (UNKNOWN_MANGA, 'Unknown'),
    )
    authors = models.ManyToManyField(Author)
    genres = models.ManyToManyField(Genre)
    name = models.CharField(max_length=255, default="")
    image = models.ImageField(upload_to=upload_manga_cover)
    summary = models.TextField(max_length=1000)
    rating = models.IntegerField(default=0)
    views = models.IntegerField(default=0)
    rank = models.IntegerField(default=0)
    alt_names = models.TextField(max_length=400, default="")
    type = models.CharField(
        max_length=255,
        choices=TYPE_CHOICES,
        default=UNKNOWN_MANGA
    )
    status = models.CharField(
        max_length=255,
        choices=STATUS_CHOICES,
        default=ONGOING,
    )
    released = models.DateField()
    date_added = models.DateTimeField(auto_now_add=True)
    date_modified = models.DateTimeField(auto_now=True)
    slug = models.SlugField(unique=True)

    def __str__(self):
        return self.name
Run Code Online (Sandbox Code Playgroud)

告诉我您还需要知道什么才能能够提供帮助,我会添加它。

cs0*_*s01 6

对我来说,解决办法是运行

python manage.py makemigrations app_name
Run Code Online (Sandbox Code Playgroud)

代替

python manage.py makemigrations
Run Code Online (Sandbox Code Playgroud)

请参阅此相关答案:/sf/answers/1809023611/


And*_*nes 2

因此,解决此问题的最快方法是将所有内容复制到新项目中(可能只需删除选定的部分并重新添加它们)

然后再次制作应用程序,复制设置和模型。makemigrations然后跑migrate。然后我可以简单地复制视图、网址和其他所有内容。

什么地方出了错?也许迁移发生了一些问题,再次从头开始迁移有助于解决问题。