【发布时间】:2025-11-23 09:25:01
【问题描述】:
我已经为通过子类化UpdateView 提供服务的表单定义了一个自定义字段和小部件。所以,是这样的:
myapp/forms.py:
from .form_fields import MyCustomField
from .widgets import MyCustomWidget
class MyModelForm(forms.ModelForm):
my_field = MyCustomField(queryset=MyModel.objects.all(), widget=MyCustomWidget)
myapp/views.py:
from django.views.generic import UpdateView
from .forms import MyModelForm
class MyView(UpdateView):
form_class = MyModelForm
myapp/widgets.py:
from django.forms import Widget
from django.template.loader import render_to_string
from django.utils.safestring import mark_safe
class MyCustomWidget(Widget):
context_data = { 'custom_data': custom_data }
html_output = render_to_string('myapp/widgets/my_custom_widget.html', context_data)
return mark_safe(html_output)
基本上,我希望能够将custom_data 从我的视图(例如,从会话存储或表单实例)传递到小部件。
【问题讨论】:
标签: django django-forms django-views django-widget