﻿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
14104	Allow joined field in F()s	Evandro Myller	nobody	"I have a ( A 1:n B 1:n C ) schema and I query for the A's pk from C objects very often. To shorten the query, I want to make a foreign key to A in C, so I don't need to join anymore.

In order to achieve that, I put the following code in a migration script:

C.objects.update(a=F('b__a'))

...but I get the following when I try to run it:

  File ""/usr/local/lib/python2.6/dist-packages/django/db/models/sql/compiler.py"", line 835, in as_sql
    val = SQLEvaluator(val, self.query, allow_joins=False)
  File ""/usr/local/lib/python2.6/dist-packages/django/db/models/sql/expressions.py"", line 12, in __init__
    self.expression.prepare(self, query, allow_joins)
  File ""/usr/local/lib/python2.6/dist-packages/django/db/models/expressions.py"", line 110, in prepare
    return evaluator.prepare_leaf(self, query, allow_joins)
  File ""/usr/local/lib/python2.6/dist-packages/django/db/models/sql/expressions.py"", line 35, in prepare_leaf
    raise FieldError(""Joined field references are not permitted in this query"")
django.core.exceptions.FieldError: Joined field references are not permitted in this query

(Full traceback attached)"		closed	Database layer (models, ORM)	dev		wontfix		evandromyller@…	Unreviewed	0	0	0	0	0	0
