跳转到主要内容

扁平页面是一个简单的对象,包含URL、标题和内容。用于一次性或特殊情况的页面,例如“关于”或“隐私政策”页面,您希望将其存储在数据库中,但又不想为它开发自定义Django应用程序。扁平页面可以使用自定义模板或默认的全局扁平页面模板。它可以关联一个或多个站点。此版本是对django.contrib.flatpages包的分支,使其支持多语言。

项目描述

django-multilingual-flatpages

https://secure.travis-ci.org/codesyntax/django-multilingual-flatpages.png?branch=master https://coveralls.io/repos/github/codesyntax/django-multilingual-flatpages/badge.svg?branch=master Code Health

扁平页面是一个简单的对象,包含URL、标题和内容。用于一次性或特殊情况的页面,例如“关于”或“隐私政策”页面,您希望将其存储在数据库中,但又不想为它开发自定义Django应用程序。

扁平页面可以使用自定义模板或默认的全局扁平页面模板。它可以关联一个或多个站点。

此版本是对django.contrib.flatpages包的分支,使其支持多语言。

安装

您需要卸载flatpages,并从INSTALLED_APPSMIDDLEWARES设置中删除所有痕迹。

要安装多语言扁平页面应用,请按照以下步骤操作

  1. 安装此包

    $ pip install multilingual_flatpages
  2. 如果您还没有将其添加到其中,请通过将‘django.contrib.sites’添加到您的INSTALLED_APPS设置中,安装站点框架。

  3. 请确保已正确设置 SITE_ID 为表示设置文件的站点ID。这通常是 1(即 SITE_ID = 1,但如果您正在使用站点框架来管理多个站点,则可能是不同站点的ID。

  4. ‘multilingual_flatpages’‘hvad’ 添加到您的 INSTALLED_APPS 设置中。

  5. multilingual_flatpages.middleware.FlatpageFallbackMiddleware’ 添加到您的 MIDDLEWARES 列表中。

  6. 在您的设置中添加一个 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,
    }
  7. 在您的 URLconf 中添加条目。例如

    from multilingual_flatpages import views as multilingual_flatpages_views
    ...
    urlpatterns = [
        url(r'^(?P<flatpage_slug>.*)$', multilingual_flatpages_views.flatpage, name='multilingual_flatpages'),
    ]
  8. 运行命令 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)

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)

0.7 (2017-04-05)

  • 基本测试设置 [erral]。

  • 添加一个模板标记来获取已翻译的 flatpages [erral]。

0.6 (2017-01-20)

0.5 (2017-01-20)

0.4 (2016-11-29)

  • 尚未有任何更改。

0.3 (2016-11-29)

  • 尚未有任何更改。

0.2 (2016-11-29)

0.1 (2016-11-29)

  • hvad翻译系统

  • 将tinymce 4.0.0编辑器添加到内容字段

  • 将url字段重命名为slug

  • 将Flatpage模型、管理界面、表单修改以适应hvad翻译:标题、内容、slug

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

multilingual_flatpages-0.8.4.tar.gz (59.9 kB 查看哈希值)

上传时间

由以下机构支持