2017-04-26 43 views
0

对于我的部分页面模型,我正在使用w translation译文here。他们按预期工作。我通过form builder添加表单,我可以通过网址www.domain.com/slug访问表单,但是当我填写它时,网址会重定向到无网址。同样在管理员中,如果我点击LIVE按钮,它也会指向None网址。W Form Form Builder不支持翻译?

我认为它与没有被挂在翻译,因为默认情况下,它是将一个URL塞在一个页面的推动面板每种语言做。所以我将表单模型连接到翻译,并且内容面板获得了正确的翻译,但促销面板仍然只收到一个slug字段。没有其他领域的不同语言。

实时按钮还是给人一种没有,当我提交页面上的形式,它重定向到一个无页面错误。再次,所有与翻译相关的其他页面都按预期工作。

我假设鹡鸰形式不完全支持的翻译。像这样的国际化,这是一个全或无关的交易?我不能在翻译情况之外留下表格吗?

回答

1

所以研究这个问题更后,我不得不进口页进AbstractEmailForm类,以使其发挥作用。这是逐字取之于鹡鸰文档中取出,并添加页面。

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"), 
    ] 

鹡鸰翻译需要使用页面更改网址。这解决了无问题。