diff options
| author | Renaud Parent <renaud.parent@gmail.com> | 2014-06-06 16:16:17 +0000 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2014-06-18 13:53:07 -0400 |
| commit | 87d0a3384cc263fe0df749a28e2fbc1e1240f043 (patch) | |
| tree | 6cb2c535b6977abd626cf96fede8fcca5595300a /tests/model_options/models/default_related_name.py | |
| parent | de9012907063e210e97c0d65cde312ff6174d420 (diff) | |
Fixed #22778 -- Added a model Meta option to define default_related_name.
Thanks jorgecarleitao and mmardini for reviews.
Diffstat (limited to 'tests/model_options/models/default_related_name.py')
| -rw-r--r-- | tests/model_options/models/default_related_name.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/model_options/models/default_related_name.py b/tests/model_options/models/default_related_name.py new file mode 100644 index 0000000000..57b52647e6 --- /dev/null +++ b/tests/model_options/models/default_related_name.py @@ -0,0 +1,41 @@ +from django.db import models + + +class Author(models.Model): + first_name = models.CharField(max_length=128) + last_name = models.CharField(max_length=128) + + +class Editor(models.Model): + name = models.CharField(max_length=128) + bestselling_author = models.ForeignKey(Author) + + +class Book(models.Model): + title = models.CharField(max_length=128) + authors = models.ManyToManyField(Author) + editor = models.ForeignKey(Editor, related_name="edited_books") + + class Meta: + default_related_name = "books" + + +class Store(models.Model): + name = models.CharField(max_length=128) + address = models.CharField(max_length=128) + + class Meta: + abstract = True + default_related_name = "%(app_label)s_%(model_name)ss" + + +class BookStore(Store): + available_books = models.ManyToManyField(Book) + + +class EditorStore(Store): + editor = models.ForeignKey(Editor) + available_books = models.ManyToManyField(Book) + + class Meta: + default_related_name = "editor_stores" |
