Python 如何:Django Parler积垢形式

Python 如何:Django Parler积垢形式,python,django,django-parler,Python,Django,Django Parler,我正在使用它来本地化我的模型 Django Admin工作正常,但现在我想在前端重新创建管理表单 到目前为止,我可以创建一个新模型,但它总是用默认语言创建的。 现在的问题是,如何设置语言 最好的情况是,我可以通过表单中的选择语言,但默认值将由get参数language=iso_code设置,或者如果使用类似于Django Admin的语言选项卡更容易的话 编辑:问题似乎出在表单类的某个地方 型号 类别(MPTTModel,translateablemodel): title=Translated

我正在使用它来本地化我的模型

Django Admin工作正常,但现在我想在前端重新创建管理表单

到目前为止,我可以创建一个新模型,但它总是用默认语言创建的。 现在的问题是,如何设置语言

最好的情况是,我可以通过表单中的
选择语言,但默认值将由get参数
language=iso_code
设置,或者如果使用类似于Django Admin的语言选项卡更容易的话

编辑:问题似乎出在表单类的某个地方

型号

类别(MPTTModel,translateablemodel):
title=TranslatedField(任意语言=True)
description=TranslatedField()
slug=TranslatedField()
parent=treeforeingkey('self',on_delete=models.CASCADE,null=True,blank=True,related_name='children',
db_索引=真)
对象=CategoryManager()
def保存(自身、*args、**kwargs):
超级(类别,自我)。保存(*args,**kwargs)
类别翻译(TranslatedFieldsModel):
title=models.CharField(最大长度=200)
description=models.TextField(null=True)
slug=models.SlugField()
master=models.ForeignKey(类别,在_delete=models.CASCADE上,相关的_name='translations')
类元:
唯一_在一起=(
('language_code','slug'),
)
查看

@method\u decorator(需要登录,name='dispatch')
类别类别CreateView(TranslateableCreateView):
型号=类别
上下文\对象\名称='类别'
模板名称='categories/update.html'
形式\类别=类别形式
对象=类别()
def get(自我、请求、*args、**kwargs):
request.DEFAULT\u LANGUAGE=语言代码
request.meta_title=_('创建类别')
return super().get(请求,*args,**kwargs)
def post(自我、请求、*args、**kwargs):
request.DEFAULT\u LANGUAGE=语言代码
request.meta_title=_('创建类别')
return super().post(请求,*args,**kwargs)
表格

class CategoryForm(TranslateableModelForm):
使用\u必需的\u属性=False
title=TranslatedField()
description=TranslatedField()
slug=TranslatedField()
parent=TreeNodeChoiceField(queryset=Category.objects.all())
定义初始化(self,*args,**kwargs):
self.helper=FormHelper()
self.helper.form_方法='post'
self.helper.form_action='。'
self.helper.form_class='form水平表格边框'
self.helper.label_class='col-lg-3'
self.helper.field_class='col-lg-8'
self.helper.layout=self.\u获取\u布局()
super()
self.fields['parent'].required=False
@静力学方法
def_u_get_layout():
布局=布局(
字段(“父项”),
字段(“标题”),
字段(“slug”),
字段('说明'),
钮扣工(
Submit('Submit',U8;('Save'))
)
)
返回布局
类元:
型号=类别
字段=['title','description','slug','parent']

当然,解决方案非常简单

问题是,
self.helper.form_action='。
覆盖所有get参数,其中包括语言/翻译