#34402: Admin searchfields for inherited model
------------------------------------------+------------------------
               Reporter:  Pavel PanĨocha  |          Owner:  nobody
                   Type:  Bug             |         Status:  new
              Component:  contrib.admin   |        Version:  3.2
               Severity:  Normal          |       Keywords:
           Triage Stage:  Unreviewed      |      Has patch:  0
    Needs documentation:  0               |    Needs tests:  0
Patch needs improvement:  0               |  Easy pickings:  0
                  UI/UX:  0               |
------------------------------------------+------------------------
 Hello everyone!

 Let's have model `Payer` and we will create `ExtendedPayer` from it
 {{{
 class ExtendedPayer(Payer):
     ...
 }}}

 We create admin for `ExtendedPayer` and define search fields. We want to
 be able to filter by `pk` of `Payer`. So I would expect these to work the
 same:


 {{{
 class ExtendedPayerAdmin(ModelAdmin):
     ...
     search_fields = (
         "pk__iexact", ...
     )
     ...
 }}}

 {{{
 class ExtendedPayerAdmin(ModelAdmin):
     ...
     search_fields = (
         "id__iexact", ...
     )
     ...
 }}}

 Guess what? The "id" variant works ok and the "pk" fails with

 Why? Because in `construct_search`
 
([[https://github.com/django/django/blob/4b1bfea2846f66f504265cec46ee1fe94ee9c98b/django/contrib/admin/options.py#L1123|See
 Git]]) it's transformed to `pk__iexact__icontains` as it found out that
 the `pk` is `payer_ptr` which is FK.

 If we want to be correct, it should be `"payer_ptr__pk__iexact"`.

 Please let me know if this behaviour is a bug or if is there any reason
 behind it.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/34402>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/01070186cc499530-e50992a6-b11b-47bd-a50d-2d89a3e471f7-000000%40eu-central-1.amazonses.com.

Reply via email to