Opened 7 months ago

Closed 6 months ago

#30034 closed Bug (invalid)

Shows wrong user on list_display in LogEntryAdmin

Reported by: Muslu Y. Owned by: nobody
Component: contrib.admin Version: 2.1
Severity: Normal Keywords: logentry, logentryadmin, list_display, wrong user
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Muslu Y.)


This is my in custom application.

from django.contrib.admin.models import LogEntry

class LogEntryAdmin(admin.ModelAdmin):
    list_display = ['content_type', 'user', 'object_id', 'object_repr', 'action_time']
    date_hierarchy = 'action_time'
    list_filter = ['user', 'content_type']
    ordering =  ['-action_time']

    def has_add_permission(self, request):
        return False

    def has_change_permission(self, request, obj=None):
        return False

    def has_delete_permission(self, request, obj=None):
        return False,LogEntryAdmin)

If I checked /admin/app/model/1593/history/ and /admin/admin/logentry/ on model's history, It's showing wrong user who changed record.

But when I entering /admin/admin/logentry/2228/change/ then It's showing True user in page.

I added screen shots.

Attachments (5)

DeepinEkranGörüntüsü_alan-seç_20181212151005.png (20.2 KB) - added by Muslu Y. 7 months ago.
DeepinEkranGörüntüsü_alan-seç_20181212150939.png (24.6 KB) - added by Muslu Y. 7 months ago.
admin_app_model_1593_history.png (27.0 KB) - added by Muslu Y. 6 months ago.
admin_admin_logentry.png (16.0 KB) - added by Muslu Y. 6 months ago.
admin_admin_logentry_2228_change.png (26.0 KB) - added by Muslu Y. 6 months ago.

Download all attachments as: .zip

Change History (10)

comment:1 Changed 7 months ago by Carlton Gibson

Resolution: needsinfo
Status: newclosed


You need to reduce this down to a minimal example showing Django is at fault.

There's really not enough info here for me to see what you issue could be. Without a reproduce it's hard to see how we could push this forward.

Changed 6 months ago by Muslu Y.

Changed 6 months ago by Muslu Y.

Attachment: admin_admin_logentry.png added

Changed 6 months ago by Muslu Y.

comment:2 Changed 6 months ago by Muslu Y.

Description: modified (diff)

comment:3 Changed 6 months ago by Carlton Gibson

Hi Muslu.

There's still not enough to show Django is at fault here. LogEntry objects have a user_id field. That points to a user.

You originally had this in your description:

Django: 2.1.3
19	 	settings.AUTH_USER_MODEL: default
20	 	DATABASE_ROUTERS: at this system we are using 2 projects on different servers but we are accessing both project from one SQL server. So we use only one SQL user table. (Users are same for all projects.) (router.AuthRouter)

As soon as you mention this I suspect you're somehow NOT routing to the same users table each time. (But you need to investigate that: this isn't a support channel.)

Happy to look at this if you can create a minimal project (using startproject and adding just what you need to) that reproduces the error and shows Django is at fault.

comment:4 Changed 6 months ago by Muslu Y.

Resolution: needsinfo
Status: closednew

Hi Carlton;

Thank you for taking the time to this problem.

I want to say that, LogEntry is using settings.AUTH_USER_MODEL for user but if we want to use auth_db for route (AuthRoute) then showing wrong user, because user_id is not same like you say.

May be this is not bug but this is a problem. I created and tested a blank project as usual and worked correctly.

How can I provide you with more information to solve the problem?

comment:5 Changed 6 months ago by Carlton Gibson

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.
Back to Top