扁平页面是一个简单的对象,包含URL、标题和内容。用于一次性或特殊情况的页面,例如“关于”或“隐私政策”页面,您希望将其存储在数据库中,但又不想为它开发自定义Django应用程序。扁平页面可以使用自定义模板或默认的全局扁平页面模板。它可以关联一个或多个站点。此版本是对django.contrib.flatpages包的分支,使其支持多语言。
项目描述
django-multilingual-flatpages
扁平页面是一个简单的对象,包含URL、标题和内容。用于一次性或特殊情况的页面,例如“关于”或“隐私政策”页面,您希望将其存储在数据库中,但又不想为它开发自定义Django应用程序。
扁平页面可以使用自定义模板或默认的全局扁平页面模板。它可以关联一个或多个站点。
此版本是对django.contrib.flatpages包的分支,使其支持多语言。
安装
您需要卸载flatpages,并从INSTALLED_APPS和MIDDLEWARES设置中删除所有痕迹。
要安装多语言扁平页面应用,请按照以下步骤操作
安装此包
$ pip install multilingual_flatpages
如果您还没有将其添加到其中,请通过将‘django.contrib.sites’添加到您的INSTALLED_APPS设置中,安装站点框架。
请确保已正确设置 SITE_ID 为表示设置文件的站点ID。这通常是 1(即 SITE_ID = 1,但如果您正在使用站点框架来管理多个站点,则可能是不同站点的ID。
将 ‘multilingual_flatpages’ 和 ‘hvad’ 添加到您的 INSTALLED_APPS 设置中。
将 multilingual_flatpages.middleware.FlatpageFallbackMiddleware’ 添加到您的 MIDDLEWARES 列表中。
在您的设置中添加一个 TINYMCE_DEFAULT_CONFIG 配置选项,例如
TINYMCE_DEFAULT_CONFIG = { 'language': 'en', 'theme': 'modern', 'height': 600, 'plugins': [ 'advlist autolink lists link image charmap print preview anchor', 'searchreplace visualblocks code fullscreen', 'insertdatetime media table contextmenu paste', ], 'toolbar': 'styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media | code preview', 'menubar': False, 'media_alt_source': False, 'media_poster': False, 'media_dimensions': False, }
在您的 URLconf 中添加条目。例如
from multilingual_flatpages import views as multilingual_flatpages_views ... urlpatterns = [ url(r'^(?P<flatpage_slug>.*)$', multilingual_flatpages_views.flatpage, name='multilingual_flatpages'), ]
运行命令 manage.py migrate。
在模板中获取 FlatPage 对象的 URL
Flatpages 应用提供了一个模板标记,允许您根据当前语言获取绝对 URL。
像所有自定义模板标记一样,您在使用之前需要加载其自定义标记库。加载库后,您可以通过 get_flatpage_url 标记检索所有当前 flatpages URL。
{% load flatpages %} {% get_flatpage_url 'flatpage-name' %}
您还可以使用 get_flatpages 模板标记来获取所有 FlatPages。
{% load flatpages %} {% get_flatpages as flatpages %} <ul> {% for page in flatpages %} <li><a href="{{ page.get_absolute_url }}">{{ page.title }}</a></li> {% endfor %} </ul>
在模板中获取 FlatPage 翻译的 URL
如果您想提供语言更改链接,这将很有用。
{% load flatpages %} {% get_flatpages as flatpages %} <ul> {% for page in flatpages %} <li><a href="{% get_translation_url page 'es'%}">{{ page.title }}</a></li> {% endfor %} </ul>
变更日志
0.8.4 (2020-06-29)
设置修复 [Zaloa Etxaniz <zetxaniz@codesyntax.com>]
[Mikel Larreategi <mlarreategi@codesyntax.com>]
[ci skip] [Mikel Larreategi <mlarreategi@codesyntax.com>]
0.8.3 (2018-06-07)
修复 setup.py [urtzai]。
0.8.2 (2017-11-29)
修复 install_requires [erral]。
0.8.1 (2017-11-29)
将 README 转换为 RST [erral]。
修复 requirements.txt [erral]。
0.8 (2017-04-07)
修复翻译 URL [Mikel Larreategi <mlarreategi@codesyntax.com>]
[Mikel Larreategi <mlarreategi@codesyntax.com>]
[ci skip] [Mikel Larreategi <mlarreategi@codesyntax.com>]
0.7 (2017-04-05)
基本测试设置 [erral]。
添加一个模板标记来获取已翻译的 flatpages [erral]。
0.6 (2017-01-20)
修复清单 [Mikel Larreategi <mlarreategi@codesyntax.com>]
从 git 中删除 MO 文件 [Mikel Larreategi <mlarreategi@codesyntax.com>]
0.5 (2017-01-20)
更新 urls.py 中的条目 [Mikel Larreategi <mlarreategi@codesyntax.com>]
合并来自 codesyntax/fixes 的拉取请求 #3 [Urtzi Odriozola <uodriozola@codesyntax.com>]
[Urtzi Odriozola <uodriozola@codesyntax.com>]
修复:get_flatpages templatetag、中间件、默认模板 [Urtzi Odriozola <uodriozola@codesyntax.com>]
为多语言 flatpages 提供默认模板 [Mikel Larreategi <mlarreategi@codesyntax.com>]
记录如何使用 get_flatpages templatetag [Mikel Larreategi <mlarreategi@codesyntax.com>]
修复 get_flatpages templatetag [Mikel Larreategi <mlarreategi@codesyntax.com>]
记录如何启用 Fallback 中间件 [Mikel Larreategi <mlarreategi@codesyntax.com>]
合并来自 codesyntax/hvad 的拉取请求 #2 [Urtzi Odriozola <uodriozola@codesyntax.com>]
[Urtzi Odriozola <uodriozola@codesyntax.com>]
将 hvad 安装添加到 README [Urtzi Odriozola <uodriozola@codesyntax.com>]
将 hvad 安装添加到 README [Mikel Larreategi <mlarreategi@codesyntax.com>]
合并来自 codesyntax/docs 的拉取请求 #1 [Urtzi Odriozola <uodriozola@codesyntax.com>]
[Urtzi Odriozola <uodriozola@codesyntax.com>]
文档改进 [Urtzi Odriozola <uodriozola@codesyntax.com>]
记录如何导入视图 [Mikel Larreategi <mlarreategi@codesyntax.com>]
改进 README [Mikel Larreategi <mlarreategi@codesyntax.com>]
将README和CHANGELOG作为长描述添加到PYPI上显示 [Mikel Larreategi <mlarreategi@codesyntax.com>]
0.4 (2016-11-29)
尚未有任何更改。
0.3 (2016-11-29)
尚未有任何更改。
0.2 (2016-11-29)
准备发布0.1版本 [Urtzi Odriozola <uodriozola@codesyntax.com>]
0.1 (2016-11-29)
hvad翻译系统
将tinymce 4.0.0编辑器添加到内容字段
将url字段重命名为slug
将Flatpage模型、管理界面、表单修改以适应hvad翻译:标题、内容、slug
项目详情
multilingual_flatpages-0.8.4.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a5a2b9a0be553a46c6bd72eec8264825ee39bcb2fa1145cab41a11d71aa03c82 |
|
MD5 | d3b9330f0fdbe58e73bab8be4a400bd0 |
|
BLAKE2b-256 | d3eac5f59fe109e59f331e39ed7f4762a7078b5f45deb52c80597eea520bd01d |