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 3246 SQL generation not working properly in per-object-permissions branch stefan.freyr@… nobody "I'm getting the following error when I use the per-object-permission branch when performing a validation in a form (using newforms). ''NOTE'': this works fine on trunk... this bug only applies to branches/per-object-permission. The error: {{{ Traceback (most recent call last): File ""/usr/lib/python2.4/site-packages/django/core/handlers/base.py"" in get_response 77. response = callback(request, *callback_args, **callback_kwargs) File ""/home/stefan/projects/svac2/svac/../svac/project/views.py"" in application 10. if form.is_valid(): File ""/usr/lib/python2.4/site-packages/django/newforms/forms.py"" in is_valid 77. return not self.ignore_errors and not bool(self.errors) File ""/usr/lib/python2.4/site-packages/django/newforms/forms.py"" in _errors 68. self.full_clean() File ""/usr/lib/python2.4/site-packages/django/newforms/forms.py"" in full_clean 154. value = getattr(self, 'clean_%s' % name)() File ""/home/stefan/projects/svac2/svac/../svac/project/forms.py"" in clean_name 13. p = Project.objects.get(name=name) File ""/usr/lib/python2.4/site-packages/django/db/models/manager.py"" in get 67. return self.get_query_set().get(*args, **kwargs) File ""/usr/lib/python2.4/site-packages/django/db/models/query.py"" in get 211. obj_list = list(clone) File ""/usr/lib/python2.4/site-packages/django/db/models/query.py"" in __iter__ 103. return iter(self._get_data()) File ""/usr/lib/python2.4/site-packages/django/db/models/query.py"" in _get_data 430. self._result_cache = list(self.iterator()) File ""/usr/lib/python2.4/site-packages/django/db/models/query.py"" in iterator 172. cursor.execute(""SELECT "" + (self._distinct and ""DISTINCT "" or """") + "","".join(select) + sql, params) File ""/usr/lib/python2.4/site-packages/django/db/backends/util.py"" in execute 12. return self.cursor.execute(sql, params) ProgrammingError at /project/application/ ERROR: column ""a"" does not exist SELECT ""project_project"".""id"",""project_project"".""name"",""project_project"".""owner_id"",""project_project"".""short_description"",""project_project"".""long_description"",""project_project"".""active"" FROM ""project_project"" WHERE (""project_project"".""name"" = a) }}} The model: {{{ #!python class Project(models.Model): name = models.CharField(maxlength=64,unique=True) owner = models.ForeignKey(User) short_description = models.TextField(maxlength=256) long_description = models.TextField() active = models.BooleanField() }}} The form: {{{ #!python class ApplicationForm(forms.Form): name = forms.CharField(max_length=64) short_description = forms.CharField(max_length=256, widget=Textarea) long_description = forms.CharField(widget=Textarea) def clean_name(self): name = self.clean_data['name'] p = Project.objects.get(name=name) if p: raise ValidationError(u'Project name is taken, please choose another name.') return name }}} The view: {{{ #!python def application(request): if request.POST: form = ApplicationForm(request.POST) if form.is_valid(): #project = Project print 'form is valid' return HttpResponseRedirect('/project/application') else: context = {'form':form, 'error_msg':""Please correct the error(s) below""} else: context = {'form':ApplicationForm()} return render_to_response(""project/application.html"", context, context_instance=RequestContext(request)) }}} The error occurs when I submit the form containing valid information... it seems that the SQL generated from the line p = Project.objects.get(name=name) is invalid. The value of the ""name"" variable is 'a' but it isn't surrounded by quotes in the SQL to specify that it is a string so it's taken to be a column name." defect closed Database layer (models, ORM) other branch normal wontfix per-object-permissions Accepted 0 0 0 0 0 0