gpt4 book ai didi

python - 使用 Parler 在 Django 管理界面中创建自定义表单

转载 作者:太空宇宙 更新时间:2023-11-04 05:09:40 26 4
gpt4 key购买 nike

我有一个 django 1.8 实例(和 python 2),我正在使用 django-parler 进行翻译。我想自定义管理界面(我想使用 django-autocomplete-light,但这不相关)。但是使用 parler 自定义管理界面似乎比我想象的要棘手一些。这是一个简化的例子。

模型.py
from django.db import models
from parler.models import TranslatableModel, TranslatedFields


class Fruits(TranslatableModel):
translations = TranslatedFields(
fname=models.CharField(max_length=200)
)

def __unicode__(self):
return self.fname

表单.py
from dal import autocomplete
from django import forms

from .models import Fruits

class FruitsForm(forms.ModelForm):
class Meta:
model = Fruits
fields = (
'fruits',
)

管理员.py
from django.contrib import admin
from parler.admin import TranslatableAdmin

from .forms import FruitsForm
from .models import Fruits


class FruitsAdmin(TranslatableAdmin):
form = FruitsForm
model = Fruits


admin.site.register(Fruits, FruitsAdmin)

问题

django.core.exceptions.FieldError:为水果指定的未知字段(水果)

我能做什么?

最佳答案

编辑#1:

经过一番搜索后,我认为您必须使表单继承自 parler.formsTranslatableModelForm 才能按预期工作。

更改您的 FruitsForm 以匹配以下内容:

from dal import autocomplete
from django import forms
from parler.forms import TranslatableModelForm

from .models import Fruits

class FruitsForm(TranslatableModelForm):
class Meta:
model = Fruits
fields = (
'fname',
)

如果 fname 给你同样的问题,尝试设置 fields='__all__'

祝你好运:)

关于python - 使用 Parler 在 Django 管理界面中创建自定义表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43319646/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com