我有一个表格类,看起来像..
#forms.py
class ExampleForm(forms.Form):
color = forms.CharField(max_length=25)
description = forms.CharField(widget=forms.Textarea, max_lenght=2500)
Run Code Online (Sandbox Code Playgroud)
我的观点看起来像这样..
#views.py
class EditExample(UpdateView):
model = Example
fields = ['color', 'description']
template_name = 'example.html'
def get_success_url(self):
pass
Run Code Online (Sandbox Code Playgroud)
模板:
#example.html
{% for field in form %}
{% if field.errors %}
<div class="control-group error">
<label class="control-label">{{ field.label }}</label>
<div class="controls">{{ field }}
<span class="help-inline">
{% for error in field.errors %}{{ error }}{% endfor %}
</span>
</div>
</div>
{% else %}
<div class="control-group">
<label class="control-label">{{ field.label }}</label>
<div class="controls">{{ field }}
{% …Run Code Online (Sandbox Code Playgroud) 我正在尝试生成一个列表来填充表单的选项。此列表将是动态的,并取决于其他用户创建的选项。以下是列表应源自的模型示例:
#models.py
class User(models.Model):
brewery_you_work_for = models.CharField(choises=ALL_THE_BREWERIES_IN_THE_WORLD)
username = models.CharField()
Run Code Online (Sandbox Code Playgroud)
我希望表格是这样的:
#forms.py
class BestBrewery(forms.Form):
vote = forms.ChoiceField(choices=BREWERIES_A_USER_WORKS_FOR)
Run Code Online (Sandbox Code Playgroud)
我想要做的是列出世界上所有啤酒厂的列表,供某些用户选择作为他们工作的啤酒厂。然后我想生成一个列表供其他用户投票为最佳啤酒厂。
假设我有 3 个用户声称他们在内华达山脉工作,2 个用户声称他们为百威啤酒工作,5 个用户声称他们为 Coors 工作。
我想生成一个如下所示的啤酒厂列表:
(
'Budweiser',
'Coors,
'Sierra Nevada',
)
Run Code Online (Sandbox Code Playgroud)
请注意按字母顺序排列,并且没有重复的啤酒厂列表。
呈现页面时,如何将对象传递到模型表单中以预填充字段?我想做一些类似于Django UpdateView基于类的视图中的构建,但要基于函数的视图。