每当我打开我的Django管理页面并单击这些模型时,我都会收到这个错误。
这是我的models.py
from django.db import models
from django.utils import timezone
from django.utils.crypto import get_random_string
import string
import random
code = get_random_string()
class Startup(models.Model):
code = models.CharField(max_length=12, default=code, unique=True)
name = models.CharField(max_length=30)
lead = models.CharField(max_length=50, unique=True)
problem = models.CharField(max_length=100)
solution = models.CharField(max_length=100)
date = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.name
class Idea(models.Model):
startup = models.ForeignKey(Startup, on_delete=models.CASCADE)
summary = models.CharField(max_length=100)
attachment = models.FileField(upload_to='attachments/idea')
member = models.CharField(max_length=50, unique=True)
date = models.DateTimeField(default=timezone.now)
DRAFT = 'DRAFT'
REVISED = 'REVISED'
FINAL = 'FINAL'
TYPE_CHOICES = [
(DRAFT, 'Draft'),
(REVISED, 'Revised'),
(FINAL, 'Final'),
]
type = models.CharField(max_length=7, choices=TYPE_CHOICES, default=DRAFT)
def __str__(self):
return self.summary
class Comment(models.Model):
startup = models.ForeignKey(Startup, on_delete=models.CASCADE)
idea = models.ForeignKey(Idea, on_delete=models.CASCADE)
comment = models.CharField(max_length=100)
member = models.CharField(max_length=50, unique=True)
date = models.DateTimeField(default=timezone.now)
GOOD = 'GOOD'
FINE = 'FINE'
BAD = 'BAD'
RATING_CHOICES = [
(GOOD, 'Good'),
(FINE, 'Fine'),
(BAD, 'Bad'),
]
rating = models.CharField(max_length=4, choices=RATING_CHOICES, default=GOOD)
def __str__(self):
return self.comment
class Product(models.Model):
startup = models.ForeignKey(Startup, on_delete=models.CASCADE)
attachment = models.FileField(upload_to='attachment/product')
version = models.IntegerField()
changes = models.CharField(max_length=100)
member = models.CharField(max_length=50, unique=True)
date = models.DateTimeField(default=timezone.now)
INITIAL = 'INITIAL'
IMPROVE = 'IMPROVE'
FINISHED = 'FINISHED'
STAGE_CHOICES = [
(INITIAL, 'Initial'),
(IMPROVE, 'Improve'),
(FINISHED, 'Finished'),
]
stage = models.CharField(max_length=9, choices=STAGE_CHOICES, default=INITIAL)
def __str__(self):
return self.changes
class Review(models.Model):
startup = models.ForeignKey(Startup, on_delete=models.CASCADE)
product = models.ForeignKey(Product, on_delete=models.CASCADE)
review = models.CharField(max_length=100)
member = models.CharField(max_length=50, unique=True)
date = models.DateTimeField(default=timezone.now)
GOOD = 'GOOD'
FINE = 'FINE'
BAD = 'BAD'
RATING_CHOICES = [
(GOOD, 'Good'),
(FINE, 'Fine'),
(BAD, 'Bad'),
]
rating = models.CharField(max_length=4, choices=RATING_CHOICES, default=GOOD)
def __str__(self):
return self.review发布于 2021-03-12 14:04:18
在添加这些模型时,是否运行了迁移?
./manage.py makemigrations
./manage.py migrate你有没有把"app“添加到INSTALLED_APPS?
发布于 2021-03-12 14:04:18
无论何时在模型中进行更改,请运行:
$ python manage.py makemigrations
$ python manage.py migrate在数据库中应用更改。
发布于 2021-03-12 14:03:41
您可能对模型进行了更改,然后再次迁移,这可能会导致模型的现有实例或新创建的模型出现问题。因此,在您的migrations.py文件夹中,删除最新的迁移,然后尝试重新迁移
检查类似的解决方案:
https://stackoverflow.com/questions/66594914
复制相似问题