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

How can I modify models.py in external app in Django CMS

我正在尝试修改现有模型(在 Django CMS Blog 应用程序中)。有一个 Post class,我可以在 Django CMS Blog 项目里面的 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")

迁移后数据库看起来像 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 模型。

除了将该应用程序复制到您的项目文件夹并在那里进行更改外,没有找到任何解决方案。