Ошибка TypeError при рендеринге: объект 'long' не повторяется - PullRequest
0 голосов
/ 19 октября 2011

У меня есть несколько моделей с некоторыми отношениями ForeignKey.

Через forms.py я добавил ModelMultipleChoiceField виджет

class VariableFieldForm(ModelForm):
    custom_field = forms.ModelMultipleChoiceField(queryset=VariableField.objects.all(), widget=FilteredSelectMultiple("Custom Fields", is_stacked=False))

    class Meta:
        model = VariableField

и при попытке получить доступ к сохраненной записи localhost:8000/admin/product/subcategory/3/или сохраняя новую запись, я получаю следующую трассировку

File "/opt/python2.6/lib/python2.6/site-packages/django/utils/encoding.py" in force_unicode
  71. s = unicode(s)
File "/opt/python2.6/lib/python2.6/site-packages/django/forms/forms.py" in __unicode__
  408. return self.as_widget()
File "/opt/python2.6/lib/python2.6/site-packages/django/forms/forms.py" in as_widget
  439. return widget.render(name, self.value(), attrs=attrs)
File "/opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/widgets.py" in render
  39. output = [super(FilteredSelectMultiple, self).render(name, value, attrs, choices)]
File "/opt/python2.6/lib/python2.6/site-packages/django/forms/widgets.py" in render
  581. options = self.render_options(choices, value)
File "/opt/python2.6/lib/python2.6/site-packages/django/forms/widgets.py" in render_options
  531. selected_choices = set([force_unicode(v) for v in selected_choices])

Exception Type: TemplateSyntaxError at /admin/product/subcategory/3/
Exception Value: Caught TypeError while rendering: 'long' object is not iterable

Я использую Django 1.3 и MySQL

Идеи, как ее решить?

1 Ответ

0 голосов
/ 20 октября 2011

Закончилось тем, что я использовал ForeignKey вместо отношения ManyToManyField.

Надеюсь, это поможет в любых будущих вопросах

...