Changeset 7597
- Timestamp:
- 06/08/08 13:13:46 (6 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/db/models/sql/query.py
r7502 r7597 852 852 853 853 def fill_related_selections(self, opts=None, root_alias=None, cur_depth=1, 854 used=None, requested=None, restricted=None ):854 used=None, requested=None, restricted=None, nullable=None): 855 855 """ 856 856 Fill in the information needed for a select_related query. The current … … 884 884 continue 885 885 table = f.rel.to._meta.db_table 886 if nullable or f.null: 887 promote = True 888 else: 889 promote = False 886 890 if model: 887 891 int_opts = opts … … 892 896 alias = self.join((alias, int_opts.db_table, lhs_col, 893 897 int_opts.pk.column), exclusions=used, 894 promote= f.null)898 promote=promote) 895 899 else: 896 900 alias = root_alias 897 901 alias = self.join((alias, table, f.column, 898 902 f.rel.get_related_field().column), exclusions=used, 899 promote= f.null)903 promote=promote) 900 904 used.add(alias) 901 905 self.related_select_cols.extend([(alias, f2.column) … … 906 910 else: 907 911 next = False 912 if f.null is not None: 913 new_nullable = f.null 914 else: 915 new_nullable = None 908 916 self.fill_related_selections(f.rel.to._meta, alias, cur_depth + 1, 909 used, next, restricted )917 used, next, restricted, new_nullable) 910 918 911 919 def add_filter(self, filter_expr, connector=AND, negate=False, trim=False,
