覆盖User对象上的默认get_absolute_url?

Jac*_* M. 28 django django-urls django-authentication

我正在尝试为列出django_tables对象创建一个通用表.我已经完成了所有工作,除了get_absolute_urls()我的User对象返回:

/users/<username>/
Run Code Online (Sandbox Code Playgroud)

虽然我可以创建此URL,但它与网站布局的其余部分不匹配,所以我正在寻找另一种方法来执行此操作.有没有办法在不破坏内置身份验证和其他功能的情况下覆盖此值?

Mar*_*vin 44

您可以使用设置在settings.py文件中执行此操作 ABSOLUTE_URL_OVERRIDES

ABSOLUTE_URL_OVERRIDES = {
    'auth.user': lambda u: "/users/%s/" % u.username,
}
Run Code Online (Sandbox Code Playgroud)

这是官方文档的链接:https://docs.djangoproject.com/en/stable/ref/settings/