将django cms页面或模型视图导出到docx文档
djangocms-export-page的Python项目详细描述
1 Django CMS Export Page
Version: | 0.1.0 |
---|---|
Source: | https://bitbucket.org/maykinmedia/djangocms-export-page |
Keywords: | ^{tt1}$ ^{tt2}$ ^{tt3}$ ^{tt4}$ |
PythonVersion: | 3.4 |
将django cms页面或模型视图导出到docx文档
2 Features
- 在CMS工具栏中添加菜单项以导出当前页
- 能够导出自定义模型,包括占位符字段
3 Installation
3.1 Requirements
- Python 3.4或更高版本
- setuptools 30.3.0或更高版本
- django 1.11或以上
- Django CMS 3.4.6或更高版本
3.2 Install
pip install djangocms-export-page
4 Usage
在您的django设置中:
INSTALLED_APPS=[...'djangocms_export_page',...]
4.1 CMS Page
CMS页面不需要任何额外的配置来工作。
如果插件有一个反向的foreignkey,它的行为类似于子级, 将以下内容添加到cmsplugin模型类:
_export_page={'children':'items'}@propertydefitems(self):returnself.frequentlyaskedquestion_set.all()
其中,items是模型类的一个iterable属性。
对于foreignkey django模型类:
_export_page={'fields':['name',...]}
如果要在常规模型中导出外键或onetoonefield的内容,可以使用 导出页面字段名。现在这些字段将作为插件字段放在某个级别。
_export_page_field_names=['number','title','lead','display_date','date','location']
4.2 Django Model
如果需要导出apphook中包含的django模型, 将以下内容添加到模型类:
_export_page={'sections':[{'name':'Meta','fields':['title',...]},{'name':'Body','fields':['content']}],}
最好将占位符字段(此处content)放在单独的部分中。
4.3 Static Placeholders
如果您还想导出页面的静态占位符,则需要一些额外的配置 是必需的。有一个名为导出静态占位符的设置。
EXPORT_STATIC_PLACEHOLDERS={'template_name':['static_placeholder_code']}
因此,对于CMS设置,它将如下所示:
# test.html<div>{%static_placeholder'test-placeholder'%}</div># settings.pyCMS_TEMPLATES=[('test.html',_('Test page')),]EXPORT_STATIC_PLACEHOLDERS={'test.html':['test-placeholder']}