2
我想在管理模型表单中包含文件域,该文件域将用于上传文件,然后将文件读取并将内容用于更新同一模型中的其他字段。处理完文件本身并不需要,所以我不希望模型中的文件字段只是在表单中。如何在未包含在模型中的django管理模型表单中包含文件域
我没有问题覆盖保存和处理表单我自己,但我无法弄清楚如何在我的表单中包含一个不在模型中的文件。
我想在管理模型表单中包含文件域,该文件域将用于上传文件,然后将文件读取并将内容用于更新同一模型中的其他字段。处理完文件本身并不需要,所以我不希望模型中的文件字段只是在表单中。如何在未包含在模型中的django管理模型表单中包含文件域
我没有问题覆盖保存和处理表单我自己,但我无法弄清楚如何在我的表单中包含一个不在模型中的文件。
您应该创建一个ModelForm for this model,并在其中添加该字段。它可能看起来像这样:
from django import forms
from models import MyModel
class MyModelForm(forms.ModelForm):
extra_file = forms.FileField()
class Meta:
model = MyModel
然后,你可以make the ModelAdmin to use this form。如果您将MyModelForm保存在yourapp/forms.py中,则您的ModelAdmin如下所示:
from django.contrib import admin
from models import MyModel
from forms import MyModelForm
class MyModelAdmin(admin.ModelAdmin):
form = MyModelForm
admin.site.register(MyModel, MyModelAdmin)