此问题已在此处有答案:
django.db.utils.OperationalError: my_table has no column id error?(2个答案)
昨天关门了。
我的课
from django.db import models
from django.contrib.auth.models import User
class Task(models.Model):
id: models.UUIDField(unique=True, auto_created=True)
content: models.CharField(default="")
deadline: models.IntegerField(default=None)
creationDate: models.DateField(auto_now_add=True)
author: models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self) -> str:
return str(self.id) + str(self.content)
我的错误:
File“/Users/ironside/Documents/Python/PythonDjango-Project/API/models.py“,line 13,instr
return str(self.id)+ str(self.content)
属性错误:“任务”对象没有属性“内容”
我测试了,所有其他属性给予相同的错误('内容'更改为属性名称)。
就好像它只把id看作是有效的属性。
我希望能够打印id +内容或任何其他属性
编辑:
更新型号:
class Task(models.Model):
id: str = models.UUIDField(
unique=True,
auto_created=True,
primary_key=True,
default=uuid.uuid4,
editable=False,
)
content: str = models.CharField(
default="",
max_length=255,
)
deadline: int = models.IntegerField(
default=None,
null=True,
blank=True,
)
creationDate: models.DateField(auto_now_add=True)
author: models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self) -> str:
return str(self.id) + str(self.content)
新的误差
django.db.utils.OperationalError:表API_task没有名为content的列
执行print(Task.objects.all())
时
2条答案
按热度按时间wd2eg0qa1#
实际上,你的模型定义不是django的方式。
11dmarpk2#
你使用注解赋值而不是常规赋值有什么特别的原因吗?
https://docs.python.org/3/reference/simple_stmts.html#index-15
如果你因为某些特定的原因使用带注解的,你还需要传入类型和赋值。
就像这样。