【问题标题】:Wagtail Form Builder doesn't support translations?Wagtail Form Builder 不支持翻译?
【发布时间】:2017-09-24 03:57:30
【问题描述】:

我正在为我的一些页面模型使用概述 here 的 wagtail 翻译。他们正在按预期工作。我正在通过form builder 添加表单我可以通过 url www.domain.com/slug 访问表单,但是当我填写它时,url 重定向到 None url。同样在管理员中,如果我点击 LIVE 按钮,它也会指向一个 None url。

我认为这与未连接到翻译有关,因为默认情况下,这是在页面的提升面板中为每种语言添加一个 url slug。所以我将表单模型与翻译联系起来,内容面板得到了正确的翻译,但提升面板仍然只收到一个 slug 字段。没有针对不同语言的其他字段。

LIVE 按钮仍然给出 None 并且当我在页面上提交表单时,它会重定向到 None 页面并出现错误。同样,我所有与翻译相关联的其他页面都按预期工作。

我假设 Wagtail 表单不完全支持翻译。像这样的国际化,是全有还是全无?我不能在翻译情况之外留下表格吗?

【问题讨论】:

    标签: django wagtail


    【解决方案1】:

    所以在进一步检查了这个问题之后,我不得不将 Page 导入到 AbstractEmailForm 类中以使其工作。这是从 Wagtail 文档中获取并添加页面的逐字记录。

    from modelcluster.fields import ParentalKey
    from wagtail.wagtailadmin.edit_handlers import (
        FieldPanel, FieldRowPanel,
        InlinePanel, MultiFieldPanel
    )
    from wagtail.wagtailcore.models import Page
    from wagtail.wagtailcore.fields import RichTextField
    from wagtail.wagtailforms.models import AbstractEmailForm, AbstractFormField
    
    
    class FormField(AbstractFormField):
        page = ParentalKey('FormPage', related_name='form_fields')
    
    
    class FormPage(AbstractEmailForm, Page):
        intro = RichTextField(blank=True)
        thank_you_text = RichTextField(blank=True)
    
        content_panels = AbstractEmailForm.content_panels + [
            FieldPanel('intro', classname="full"),
            InlinePanel('form_fields', label="Form fields"),
            FieldPanel('thank_you_text', classname="full"),
            MultiFieldPanel([
                FieldRowPanel([
                    FieldPanel('from_address', classname="col6"),
                    FieldPanel('to_address', classname="col6"),
                ]),
                FieldPanel('subject'),
            ], "Email"),
        ]
    

    Wagtail 翻译需要使用 Page 来更改 URL。这解决了 None 问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-29
      • 1970-01-01
      • 2016-08-31
      • 1970-01-01
      • 1970-01-01
      • 2020-12-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多