【问题标题】:Extending the Page Model in django-cms 3.01在 django-cms 3.01 中扩展页面模型
【发布时间】:2014-06-24 23:05:39
【问题描述】:

我刚开始使用 django-cms 3.01 和 django 1.6.4/python 2.7.6。我上一次使用 django 是 1.4 版,而我之前从未使用过 django-cms。

我正在尝试按照Extending the Page & Title Models 上的官方文档中的说明进行操作,但遇到了问题。

我需要添加的自定义字段与示例非常相似,所以我只是完全使用了他们的代码。运行一个同步数据库,启动服务器,一切顺利。该字段在管理员中显示得很好。 “图标扩展”的管理菜单中有一个条目。我单击添加,然后进入表单以上传文件。我去上传文件,我收到以下错误:

DoesNotExist at /admin/the_site_name/iconextension/add/
IconExtension has no extended_object.
...
Exception Type: DoesNotExist
Exception Value:    IconExtension has no extended_object.
Exception Location: /Users/me/Sites/the_site_name/env/lib/python2.7/site-packages/django/db/models/fields/related.py in __get__, line 326

很可能我只是遗漏了一些简单的东西,但我想不通。我应该有一个外键直接链接到页面吗?我以为它是自动处理的,但显然我还没有完全理解它。

感谢任何帮助。

【问题讨论】:

    标签: django django-cms


    【解决方案1】:

    您必须在前端编辑工具栏中编辑扩展。如您在上面链接的文档中的“为页面扩展添加工具栏菜单项”部分所述,将按钮添加到工具栏。

    【讨论】:

    • 我正在尝试相同的教程,@Tim 建议,根据教程,我还向应用程序添加了 cms_toolbar.py,但引发了相同的错误。正如教程所说,每个扩展都必须与特定的页面对象相关。并且当一个扩展对象被保存时,没有发现与之关联的相关页面对象。因此错误。但是如何修复错误。
    • 您必须在前端编辑工具栏中编辑扩展程序(当您将“?编辑”附加到页面的 URL 时出现),而不是在管理界面中。无法在管理员中将页面与扩展程序相关联。
    猜你喜欢
    • 1970-01-01
    • 2020-05-03
    • 2011-06-14
    • 1970-01-01
    • 2019-09-03
    • 2011-07-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多