微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Django CMS 的外部应用程序中修改 models.py

如何解决如何在 Django CMS 的外部应用程序中修改 models.py

我正在尝试修改现有模型(在 Django CMS Blog 应用程序中)。有一个 Post 类,我可以在位于 Django CMS 博客项目内的 models.py 中修改它,如下所示:

media = PlaceholderField("media",related_name="media")
post_title = PlaceholderField("post_title",related_name="post_title") # My code
content = PlaceholderField("post_content",related_name="post_content")
liveblog = PlaceholderField("live_blog",related_name="live_blog")

在迁移之后,DB 看起来像 this。 如您所见,该字段已添加。但是我怎么能从我的本地项目文件中做到这一点呢?我不想在 3d 派对应用模型中添加代码,因为它会导致更新此 3d 派对应用时出现问题。

解决方法

我认为最好的方法是在您的应用中扩展来自 Django CMS 博客的 Post 模型。

my_app/models.py

from djangocms_blog.models import Post

class MyCustomPost(Post):
    # This will have every field in the parent Post model,plus the ones you add below.
    my_custom_field = ...

然后使用 MyCustomPost(在您的视图、表单、管理员等中)而不是使用原始的 Post 模型。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。