当前位置: 首页 > 知识库问答 >
问题:

完整性错误和操作错误Django 1.6.6

欧阳衡
2023-03-14

我刚刚开始开发一个Django博客,并遵循这个youtube教程-https://www.youtube.com/watch?v=7rgph8en0Jc

我正在使用Django 1.6.6。

  1. 每次我试图在管理中添加条目,我都会得到这个错误。谢谢你的帮助!

环境:

Django版本:1.6.6 Python版本:2.7.8安装的应用程序:('Django.contrib.admin','Django.contrib.auth','Django.contrib.contenttypes','Django.contrib.sessions','Django.contrib.messages','Django.contrib.staticfiles','niceblog','Django_markdown')安装的中间件:('django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.messages.middleware.MessageMiddleware','django.Clicking.xFrameOptionMiddleware')

Traceback:
File "C:\Users\user\desktop\firstblog\lib\site-packages\django\core\handlers\base.py"

get_response响应=wrapped_callback(请求,*callback_args,

Exception Type: IntegrityError at /admin/niceblog/entry/add/
Exception Value: niceblog_entry.slug may not be NULL

环境:

Django版本:1.6.6 Python版本:2.7.8安装的应用程序:('Django.contrib.admin','Django.contrib.auth','Django.contrib.contenttypes','Django.contrib.sessions','Django.contrib.messages','Django.contrib.staticfiles','niceblog','Django_markdown')安装的中间件:('django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.messages.middleware.MessageMiddleware','django.Clicking.xFrameOptionMiddleware')

Traceback:get_response中的文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\core\处理程序\base.py"。"在包装器中返回self.admin_site.admin_view(view)(*args,**kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\utils\decorators.py"_wrapped_view99。*kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\视图\装饰者\cache.py"在_wrapped_view_func52。响应=view_func(请求,*args,**kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\contrib\admin\sites.py"在内部198。返回视图(请求,*args,**kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\utils\decorators.py"在_wrapper29。返回bound_func(*args,**kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\utils\decorators.py"在_wrapped_view99。响应=view_func(请求,*args,**kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\utils\decorators.py"在bound_func25。"内部371中的C:\用户\用户\桌面\firstblog\lib\site-包\django\db\transaction.py"返回func(*args,**kwargs)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\contrib\admin\options.py"change_view1255. form=ModelForm(实例=obj)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\form\models.py"在init 315中。object_data=model_to_dict(实例,opts.fields,opts.exclude)文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\窗体\models.py"model_to_dict141. data[f.name]=list(f.value_from_object(实例)。values_list('pk',平面=True))File"C:\用户\用户\桌面\firstblog\lib\site-包\django\db\模型\query.py"在iter 96中。自我。_fetch_all()文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\db\模型\query.py"在_fetch_all857。自我。_result_cache=列表(自我。迭代器())文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\db\模型在迭代器1068中的\query. py"。用于自. query.get_compiler(自. db)中的行。results_iter():在results_iter713中的文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\db\模型\sql\编译器. py"。用于自.execute_sql(MULTI):文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\db############################################################################################################################################################################################################在执行53中的\background\utils. py。返回自. cursors。执行(sql,params)文件“C:\用户\用户\桌面\firstblog\lib\site-包\django\db\utils. py”在退出99。六. reason(dj_exc_type,dj_exc_value,回溯)文件“C:\用户\用户\桌面\firstblog\lib\site-包\django\db\backend\utils. py”在执行返回执行452中的文件"C:\用户\用户\桌面\firstblog\lib\site-包\django\db\backend\sqlite3\base. py"返回数据库。执行(自我,查询,参数)

异常类型:操作错误在 /admin/niceblog/entry/2/异常值:没有这样的表:niceblog_entry_tags

models.py文件---

class Tag(models.Model):
    slug = models.SlugField(max_length=200, unique=True)

def __unicode__(self):
    return self.slug

class Entry(models.Model):
    title = models.CharField(max_length=200)
    body = models.TextField()
    publish = models.BooleanField(default=True)
    created = models.DateTimeField(auto_now_add=True)
    modified = models.DateTimeField(auto_now=True)
    tags = models.ManyToManyField(Tag)

    def __unicode__(self):
        return self.title

    class Meta:
        verbose_name = "Blog Entry"
        verbose_name_plural = "Blog Entries"
        ordering = ['-created']

admin.py文件---

class EntryAdmin(MarkdownModelAdmin):
    list_display = ("title", "created")

admin.site.register(Entry, EntryAdmin) 
admin.site.register(Tag)

共有1个答案

姜鸿
2023-03-14

我猜Entry.tags是在创建表之后添加的。如果可以将django升级到1.7,那么可以使用内置迁移。首先可将应用程序重置为实际数据库模式,即删除标记字段,然后:

# Create initial migrations
$ python manage.py makemigrations your_app
# Migrate
$ python manage.py migrate your_app
# Add your tags field. Repeat
$ python manage.py makemigrations your_app
$ python manage.py migrate your_app

如果您想继续使用django 1.6,请使用South。这几乎是一样的:

# Create initial migrations
$ python manage.py schemamigration your_app intial --init
# Migrate
$ python manage.py migrate your_app --fake
# Add your tags field. Create migration
$ python manage.py schemamigration your_app add_tags --auto
$ python manage.py migrate your_app
 类似资料:
  • 当我运行模拟器时,以下错误显示为警报: 操作无法完成。(LaunchServicesError错误0。) 我试过很多关于堆栈溢出的答案,但它们对我都不起作用。 Feb 18 14:48:12 com.apple.dt.xcode[32825]:错误域=LaunchServicesError Code=0“(null)”userInfo={Error=MissingBundleExecutable,

  • 我试图在出现错误的情况下通过AlaMofires的回调访问 属性 我有一个枚举,它处理 类型,特别类似于Alamofire文档 在我的请求中,如果有错误,我将适用的错误存储到Alamofire提供的 案例中,如下所示: 调用该方法时: 然后,当我调用 方法时,我检查完成处理程序中的错误: 如果出现返回 的错误,我将收到以下错误 如何从返回的错误中获取 值?我试过 ,但没有成功。任何帮助都太好了!

  • 我正在开发一个广泛使用C模板的库。在编写时,我遇到了这样的代码(当然是简化的): 在使用msvc 19(Visual Studio 2017)编译时,我遇到了以下错误: /opt/compiler-explorer/windows/19.10.25017/lib/native/include/xlocale(314):警告C4530:使用了C异常处理程序,但未启用展开语义。指定/EHsc(28):

  • HTML 它在Chrome上运行良好,生成电影标题,但会出现错误 和 而无法完成操作。

  • 我的案例: 输出: 1 - 停止; 2 - 停止; 并显示错误... 现在 输出: 1-停止; 并显示错误… 为什么不工作-ErrorAction沉默继续)获取PSSessionConfiguration? 更新: 现在 输出: 1 -继续;< br> 2 -继续; 现在 输出: 1-SilentlyContinue 2-硅连续; 该参考: < code>ErrorAction无处不在的参数可用于

  • 问题内容: 我已经从Rich Faces 3.3升级到Rich Faces 4.2,因为Ajax不适用于IE9。现在它仍然不起作用。 收到响应后,IE会收到一个JS错误 “ SCRIPT58734:从源头上来的东西”:c00ce56e。 在尝试时 在jsf.js.html?ln = javax.faces&conversationContext = 2,第1行第21747行 我认为是因为HTTP标