m4r*_*c0s 2 sqlite django django-models
我在我的应用程序中创建了以下模型events:
from django.db import models
from django.utils import timezone
from django.urls import reverse
class EventType(models.Model):
type_of_event = models.CharField(max_length=100, unique=True)
def __str__(self):
return self.type_of_event
class Event(models.Model):
type_of_event = models.ForeignKey(EventType, on_delete=models.CASCADE)
name = models.CharField(max_length=100)
description = models.TextField()
event_date = models.DateTimeField(default=timezone.now())
venue = models.CharField(max_length=200)
entry_fee = models.FloatField()
def __str__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
由于一些错误和更改,我多次创建和删除迁移文件。现在, makemigrations 命令有效,但是当我尝试使用 : 迁移模型时python manage.py migrate,它显示以下错误:
File "/home/anirudh/.local/share/virtualenvs/Amrita-event-manager-DHqKHtGE/lib/python3.5/site-packages/django/db/backends/sqlite3/base.py", line 294, in execute
return Database.Cursor.execute(self, query)
django.db.utils.OperationalError: table "events_event" already exists
Run Code Online (Sandbox Code Playgroud)
我正在使用 django 2.1 版和 sqlite3。
大多数与此类似的问题都太旧了,并且与我现在使用的版本不兼容。
首先备份db.sqlite3文件
您可以使用 dbshell,它运行数据库引擎的命令行客户端
https://docs.djangoproject.com/en/dev/ref/django-admin/#django-admin-dbshell
python manage.py dbshell
Run Code Online (Sandbox Code Playgroud)
列出所有表
sqlite> .table
Run Code Online (Sandbox Code Playgroud)
删除表
sqlite> DROP TABLE <table>;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1566 次 |
| 最近记录: |