向Django内置登录名添加功能

时间:2018-06-24 09:23:57

标签: python django

我的问题是如何向Django内置登录名添加功能

我要在用户内置模型中添加 get_absolute_url()函数

Models.py

from django.contrib.auth.models import User
from django.shortcuts import render, redirect, get_object_or_404


class PostLikeToggle(RedirectView):
def get_redirect_url(self, *args, **kwargs):
    slug = self.kwargs.get("username")
    obj = get_object_or_404(User, username=slug)
    return obj.get_absolute_url()

1 个答案:

答案 0 :(得分:1)

在模型未声明get_absolute_url的情况下(如django 1.7以来没有User的情况),可以使用ABSOLUTE_URL_OVERRIDES设置。

ABSOLUTE_URL_OVERRIDES = {
    'auth.user': lambda u: "/users/%s/" % u.username,
}

文档在这里; https://docs.djangoproject.com/en/1.11/ref/settings/#absolute-url-overrides