diff options
| author | Luke Plant <L.Plant.98@cantab.net> | 2014-10-02 11:19:18 +0100 |
|---|---|---|
| committer | Luke Plant <L.Plant.98@cantab.net> | 2014-10-02 11:19:18 +0100 |
| commit | ca139bbfdf48bf59b0918a7d675cdc5d4ae60957 (patch) | |
| tree | f9db6d4c5493ee85c03b137f82b18a6a6756176b | |
| parent | 32c7d3c061b83e9206ef2bf13fbc302a1998f317 (diff) | |
Documented how to rename get_query_set if you are a library author
| -rw-r--r-- | docs/releases/1.6.txt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/docs/releases/1.6.txt b/docs/releases/1.6.txt index 1d94153707..edafbc90e1 100644 --- a/docs/releases/1.6.txt +++ b/docs/releases/1.6.txt @@ -1099,6 +1099,26 @@ a regular deprecation path. Methods that return a ``QuerySet`` such as ``Manager.get_query_set`` or ``ModelAdmin.queryset`` have been renamed to ``get_queryset``. +If you are writing a library that implements, for example, a +``Manager.get_query_set`` method, and you need to support old Django versions, +you should rename the method and conditionally add an alias with the old name:: + + class CustomManager(models.Manager): + def get_queryset(self): + pass # ... + + if django.VERSION < (1, 6): + get_query_set = get_queryset + + # For Django >= 1.6, models.Manager provides a get_query_set fallback + # that emits a warning when used. + +If you are writing a library that needs to call the ``get_queryset`` method and +must support old Django versions, you should write:: + + method = getattr(some_manager, 'get_queryset', some_manager.get_query_set) + method(params) + ``shortcut`` view and URLconf ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
