【发布时间】:2014-01-23 13:55:28
【问题描述】:
请帮助我使用表单访问模板中的 m2m 值
我的模特:
class Opportunity(models.Model):
sfdc_id = models.PositiveIntegerField(null=True, blank=True)
class Event(models.Model):
background = models.TextField(null=True, blank=True)
account = models.ForeignKey(Account)
opportunities = models.ManyToManyField(Opportunity, null=True, blank=True)
Views.py
def event(request,event_id):
if request.method == 'GET' :
eventForm=EventForm(instance=Event.objects.get(pk=event_id))
locationForm = LocationForm(prefix='location')
return render(request,'events/event.html', {'eventForm': eventForm, 'locationForm': locationForm})
更新了模型表格:
class EventForm(ModelForm):
account = ModelChoiceField(queryset=Account.objects.all())
background = CharField(widget=Textarea(attrs={'class':'form-textarea resizeoff auto-resize js_auto_resize default'}), required=False)
opportunities = CharField(label='SalesForce ID', widget=TextInput(attrs={'class' : 'form-input'}), required=False)
在我的模板中,我尝试了以下代码,但无法正常工作
{% for attr in eventForm.opportunities.all %}
<td>{{ attr.sfdc_id }}</td>
{% endfor %}
我试过了,还是不行
{% for attr in eventForm.opportunities_set.all %}
<td>{{ attr.sfdc_id }}</td>
{% endfor %}
请帮帮我!!!
【问题讨论】:
-
你应该告诉我们EventForm和LocationForm的定义
-
我已经更新了模型表格,请看@Alvaro
标签: python django django-forms django-templates