Domanda

firstly, sorry if this problem was already solved, but I couldn't find solution anywhere.

I created two admin instances in Django, here's my admin.py sample code:

class ConferenceRoomAdmin(admin.ModelAdmin):
    readonly_fields = ('token', 'image_tag')

class ConferenceRoomSuperAdmin(admin.ModelAdmin):
    readonly_fields = ('token', 'image_tag')


class ConferenceAdmin(admin.AdminSite):
    def get_urls(self):
        urls = super(ConferenceAdmin, self).get_urls()
        return urls

admin_site = ConferenceAdmin()
admin_site.register(ConferenceContext)
admin_site.register(ConferenceRoom, ConferenceRoomAdmin)


class ConferenceSuperAdmin(admin.AdminSite):
    pass

super_admin_site = ConferenceSuperAdmin()
super_admin_site.register(ConferenceRoom, ConferenceRoomSuperAdmin)

and urls.py file:

url(r'^admin/', include(admin.admin_site.urls)),
url(r'^myadmin/', include(admin.super_admin_site.urls)),
url(r'^login/', views.login_view),
url(r'^test/', views.test_view),

I'm able to login to both admin instances, however, if I log into 'myadmin' instance and click on any link (i.e. change password or edit users, etc. etc) I'm redirected to 'admin' site. What may be wrong here?

Thanks in advance!

È stato utile?

Soluzione

Try adding a name attribute to the second admin site, like so:

super_admin_site = ConferenceSuperAdmin(name = 'super_admin')

That is the only difference between your code and mine, as far as I can tell.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top