Browse Source

Fixed #25461 -- Corrected meta API code examples to account for MTI.

In the case of multiple-table inheritance models, get_all_related_objects() and
get_all_related_objects_with_model() don't return the auto-created
OneToOneField, but the new examples didn't account for this.
Romain Garrigues 8 years ago
parent
commit
8be84e2ac4
1 changed files with 4 additions and 2 deletions
  1. 4 2
      docs/ref/models/meta.txt

+ 4 - 2
docs/ref/models/meta.txt

@@ -215,7 +215,8 @@ can be made to convert your code to the new API:
 
       [
           f for f in MyModel._meta.get_fields()
-          if (f.one_to_many or f.one_to_one) and f.auto_created
+          if (f.one_to_many or f.one_to_one)
+          and f.auto_created and not f.concrete
       ]
 
 * ``MyModel._meta.get_all_related_objects_with_model()`` becomes::
@@ -223,7 +224,8 @@ can be made to convert your code to the new API:
       [
           (f, f.model if f.model != MyModel else None)
           for f in MyModel._meta.get_fields()
-          if (f.one_to_many or f.one_to_one) and f.auto_created
+          if (f.one_to_many or f.one_to_one)
+          and f.auto_created and not f.concrete
       ]
 
 * ``MyModel._meta.get_all_related_many_to_many_objects()`` becomes::