我正在尝试为django_social中的模型verbose_name
设置SocialAuthUser
。
我尝试使用代理模型,将其Meta.verbose_name
设置为所需值,但是没有成功(可能是我做错了)。如果可以的话,我可以提供更多详细信息。
最好避免以可编辑模式从pip安装模块,而只是替换管理站点中的verbose_name
。
可能我可以通过其他方式替换管理站点中的型号名称吗? 我曾考虑过将自定义链接添加到管理站点,但是由于它感觉很hacky,因此尚未对其进行研究。
答案 0 :(得分:1)
您几乎完全正确。为了使对代理模型的更改生效,您需要先从管理站点注销模型,然后再注册代理模型。
下面的示例适用于social_django.Association
模型。
# admin.py
from django.contrib import admin
from social_django.admin import AssociationOption
from social_django.models import Association
class AssociationProxy(Association):
class Meta:
proxy = True
verbose_name = 'custom model'
app_label = 'social_django'
admin.site.unregister(Association)
admin.site.register(AssociationProxy, AssociationOption)
这假定您正在使用默认的管理站点
# urls.py
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]