Database 为Django CMS创建插件

Database 为Django CMS创建插件,database,django,plugins,django-models,django-cms,Database,Django,Plugins,Django Models,Django Cms,我想我在尝试创建django cms插件时搞砸了,现在我无法回头了。该插件(称为sbbplugin)似乎正在“工作”(它会显示),但每当我尝试发布该站点时,就会出现以下错误: DatabaseError at /admin/cms/page/18/publish/ relation "cmsplugin_sbbmodel" does not exist LINE 1: ...id", "cmsplugin_sbbmodel"."cmsplugin_ptr_id" FROM "cmsplugin

我想我在尝试创建django cms插件时搞砸了,现在我无法回头了。该插件(称为sbbplugin)似乎正在“工作”(它会显示),但每当我尝试发布该站点时,就会出现以下错误:

DatabaseError at /admin/cms/page/18/publish/

relation "cmsplugin_sbbmodel" does not exist
LINE 1: ...id", "cmsplugin_sbbmodel"."cmsplugin_ptr_id" FROM "cmsplugin...
                                                             ^
我试图删除插件,但我不能这样做,因为该页面尚未发布。我的插件没有模型或任何东西。此外,我无法通过单击“删除”从页面中删除插件。数据库好像坏了。由于我没有足够的经验知道你需要什么信息,如果你能给我进一步的指示,我将不胜感激

更新:我认为问题在于我试图使用一个我删除的模型(sbbmodel)。我应该再次尝试添加模型吗?如果是这样,我应该如何修复数据库?我是否必须为我的应用运行迁移?我甚至需要将插件注册为应用程序吗

更新2:因此我尝试再次添加模型并迁移应用程序,但出现以下错误:

CommandError: One or more models did not validate:
sbbplugin.sbbmodel: Accessor for field 'cmsplugin_ptr' clashes with related field 'CMSPlugin.sbbmodel'. Add a related_name argument to the definition for 'cmsplugin_ptr'.
sbbplugin.sbbmodel: Reverse query name for field 'cmsplugin_ptr' clashes with related field 'CMSPlugin.sbbmodel'. Add a related_name argument to the definition for 'cmsplugin_ptr'.
S.sbbmodel: Accessor for field 'cmsplugin_ptr' clashes with related field 'CMSPlugin.sbbmodel'. Add a related_name argument to the definition for 'cmsplugin_ptr'.
S.sbbmodel: Reverse query name for field 'cmsplugin_ptr' clashes with related field 'CMSPlugin.sbbmodel'. Add a related_name argument to the definition for 'cmsplugin_ptr'.

我真的不明白,因为我从来没有指定外键。我想这是因为我继承了CMSPlugin。有什么帮助吗?

我终于修好了。首先,我删除了我为插件创建的每个文件。然后我删除了数据库中保存的每个插件实例。不幸的是,这并没有解决问题,即使在重新启动服务器后,我仍然会收到相同的错误

诀窍是进入phpPgAdmin并选择所有表,然后选择“correct”。它没有告诉我到底是什么问题,但后来一切又恢复正常。因此,如果您遇到了同样的问题,只需自动“更正”数据库即可