我正在将夹层用于一个项目。我需要在 Mezzanine 博文中添加一个额外的字段。
我注意到使用 EXTRA_MODEL_FIELDS 可以做到这一点,但它看起来很复杂。
我也尝试将博客文件夹从站点包复制到我的项目路径,然后修改models.py。但我不工作。
我是 Django 新手,有人可以帮忙吗?
谢谢
通过做一些研究,现在我得到了答案: 1.将博客应用程序从站点包复制到我的项目 2.更改我的设置.py INSTALLED_APPS = ( "blog", #它是 "mezzanine.blog", ...... 3.修改blog/models.py 将以下行添加到类 BlogPost shop_url=models.CharField(max_length=250,null=True, blank=True) 4.迁移表(南装) ./manage.py 架构迁移博客 --auto ./manage.py 迁移博客
您可以创建一个 django 应用程序 (CustomBlog),将其添加到您安装的应用程序中,然后删除或评论 Mezzanine 博客:
INSTALLED_APPS = (
"CustomBlog", #it was "mezzanine.blog",
...
)
在您的 CustomBlog 的 models.py 和 admin.py 中,继承自 Mezzanine 的 BlogPost 类:
models.py
from django.db import models
from mezzanine.blog.models import BlogPost
from mezzanine.blog.models import BlogCategory
class CustomBlog(BlogPost):
# Add New Field
# example
new_field = models.CharField(max_length=255)
class CustomBlogCategory(BlogCategory):
pass
admin.py
from django.contrib import admin
from .models import CustomBlog,CustomBlogCategory
admin.site.register(CustomBlog)
admin.site.register(CustomBlogCategory)
然后在终端中创建并运行迁移
python manage.py makemigrations
python manage.py migrate