Django 在/没有此类表格时出现操作错误:blog\u post\u类别
我正在尝试将分类部分添加到我的博客宠物项目中;我觉得我快到了,但在工作的最后一部分,我发现了一个错误: “在/没有此类表格时出现操作错误:博客\帖子\类别” 我的模特Django 在/没有此类表格时出现操作错误:blog\u post\u类别,django,Django,我正在尝试将分类部分添加到我的博客宠物项目中;我觉得我快到了,但在工作的最后一部分,我发现了一个错误: “在/没有此类表格时出现操作错误:博客\帖子\类别” 我的模特 class Post(models.Model): title=models.CharField(最大长度=200) content=models.TextField() 发布日期=models.DateTimeField(默认值=时区.now) author=models.ForeignKey(用户,on_delete=mode
class Post(models.Model):
title=models.CharField(最大长度=200)
content=models.TextField()
发布日期=models.DateTimeField(默认值=时区.now)
author=models.ForeignKey(用户,on_delete=models.CASCADE)
categories=models.ManyToManyField('categority',related_name='posts')
定义(自我):
返回自己的标题
def get_绝对_url(自身):
返回反向('post-detail',kwargs={'pk':self.pk})
类别(models.Model):
name=models.CharField(最大长度=20)
我的观点
def home(请求):
内容={
“posts”:Post.objects.all()
}
返回呈现(请求'blog/home.html',内容)
def blog_类别(请求、类别):
posts=Post.objects.filter(
类别名称包含=类别
).订购(
“-已在上创建”
)
内容={
“类别”:类别,
“职位”:职位
}
返回呈现(请求'blog/blog_category.html')
我真的不明白为什么,但调试器显示第0行的base.html
中有错误
“在template/media/john/DATA/DJANGO/WORKING/blog/templates/blog/base.html中,第0行出现错误”
来自base.html模板的一些代码
1 {% load static %}
2 <!DOCTYPE html>
3 <html lang="en" dir="ltr">
4 <head>
5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
8 <link rel="stylesheet" href="{% static 'blog/main.css' %}">
...
1{%load static%}
2.
3.
4.
5.
6.
7.
8.
...
对于“操作错误/没有这样的表:blog_post_categories”
-我认为您可能缺少迁移(manage.py makemigrations
/manage.py migrate
)。因此,一天之后,我对bug搜索和解决问题感到厌倦
我的bug的解决方案是删除数据库(rm db.sqlite3
)并运行python3 manage.py migrate
希望它能帮助其他人解决这个错误
附言:我真的不知道为什么会出现这个错误,如果有人有答案,请告诉我,我对这个小但烦人的错误非常好奇:)不,我做对了。我还执行了
python3 manage.py迁移--运行syncdb
操作以执行:应用所有迁移:管理、身份验证、内容类型、会话、运行迁移的用户:不应用迁移代码>