添加新的Wagtail CMS Snippets

时间:2017-02-13 19:09:49

标签: django wagtail wagtail-snippet

我想添加新的Wagtail Snippet模型但是找不到任何关于正确文件命名的文档来开始构建它们;我将它们放在我的应用model.py文件中,还是有类似于wagtailadmin的特定方法?谢谢。

1 个答案:

答案 0 :(得分:1)

片段是常见的django模型,它们使用装饰器函数注册。因此他们住在models.py

from django.db import models
from wagtail.wagtailsnippets.models import register_snippet

@register_snippet
class Foobar(models.Model):
    foo = models.CharField(max_length=3)

如果您的应用增长,您可以考虑使用套餐而不是模块。创建一个名为models的文件夹,并将models.py的内容复制到名为__init__.py的文件中。 然后创建单独的模块。例如。 snippets.py在此新文件夹中,并将其导入__init__.py

示例代码:

<强> models/__init__.py

from .snippets import *

<强> models/snippets.py

from django.db import models
from wagtail.wagtailsnippets.models import register_snippet

@register_snippet
class Foobar(models.Model):
    foo = models.CharField(max_length=3)