﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
4185	error with ModelMultipleChoiceField, help_text an i18n=True	stefan@…	Adrian Holovaty	"I have a Model:

{{{
class Project(models.Model):
	
	name = models.CharField(maxlength=200)
	long_name = models.CharField(maxlength=512)
	company = models.ForeignKey(Company)
	employee = models.ManyToManyField(Employee)
	
	def __str__(self):
		return ""%s (%s)"" % (self.name, self.company)
	
	class Admin:
		list_display = ('name','long_name','company')
		
	class Meta:
		verbose_name = 'Project'
		verbose_name_plural = 'Projects'
		unique_together = (('name','company'),)
}}}

a View-Function:

{{{
def edit_project(request,name, id):
	project = get_object_or_404(Project,pk=id)
	ProjectForm = forms.models.form_for_instance(project)
	
	if request.POST:
		myform = ProjectForm(request.POST)
		if myform.is_valid():
			myform.save()
	else:
		myform = ProjectForm()
	
	return render_to_response('timer/edit_project.html',{'myform':myform},context_instance=RequestContext(request))
}}}

and a Template:

{{{
{% extends ""index.html"" %}

{% block content %}

{{ myform.as_p }}

{% endblock %}
}}}


 * If I set USE_I18N=True in settings.py, that happens:

{{{
Traceback (most recent call last):
File ""/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/template/__init__.py"" in render_node
  732. result = node.render(context)
File ""/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/template/__init__.py"" in render
  782. output = self.filter_expression.resolve(context)
File ""/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/template/__init__.py"" in resolve
  572. obj = resolve_variable(self.var, context)
File ""/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/template/__init__.py"" in resolve_variable
  665. current = current()
File ""/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/newforms/forms.py"" in as_p
  160. return self._html_output(u'<p>%(label)s %(field)s%(help_text)s</p>', u'<p>%s</p>', '</p>', u' %s', True)
File ""/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/newforms/forms.py"" in _html_output
  134. help_text = help_text_html % field.help_text

  UnicodeDecodeError at /timer/stefan/projects/4/
  'ascii' codec can't decode byte 0xc3 in position 93: ordinal not in range(128)
}}}

 * If I set USE_I18N=False, everything works fine.
 * If I set USE_I18N=True and comment out the employee field in the Project Model everything works fine.

My Browser uses German as the standard locale.
Looks like there's an error with the help_text of the ModelMultipleChoiceField
"		closed	Forms	dev		fixed	USE_I18N unicode newforms ModelMultipleChoiceField		Unreviewed	0	0	0	0	0	0
