django - 从一个页面重定向到另一页面时出现问题

标签 django

我使用的是 DJango 2.2.6

个人资料应用

app_name = 'myprofileapp'

urlpatterns = [
    path('profile', accountController.as_view(), name='account')
]

身份验证应用

app_name = 'authapp'

urlpatterns = [
    path('login', loginController.as_view(), name='login')
]

以下是登录用户的代码。如果登录成功,则发送到个人资料页面。

class loginController(View):
    def post(self, request):
        username = request.POST.get('username')
        password = request.POST.get('password')
        userobj = authenticate(username = username, password = password)
        if(userobj == None):
            return HttpResponse("Not Found")
        else:
            login(request, userobj)
            return redirect('profile')          

在这段代码login(request, userobj)之后,如果我写return render(request, 'profile.html'),那么url仍然是登录状态。

当我写return redirect('profile')时,它说

Reverse for 'profile' not found. 'profile' is not a valid view function or pattern name.

我错过了什么吗?

最佳答案

path('profile', accountController.as_view(), name='profile')

name='account'更改为name='profile'

关于django - 从一个页面重定向到另一页面时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58789918/

相关文章:

python - Django休息框架: Issue using OrderingFilter and django-filter simultaneously

python - 不同用户类型的django模型设计

python - Django : how to give user/group permission to view model instances for a specified period of time

Django 1.11 CreateView传递URL参数

django - 在 django 中迁移数据的最佳方法是什么

python - 能够将字段保存到变量中并使用到 queryset.value() 中吗? Django

当用户通过在 Chrome 上返回历史记录注销时,Django @login_required View 仍然显示

Django 测试DeleteView

python - Django - feeds() 处的 TypeError 缺少 1 个必需的位置参数 : 'id'

django - 从 ModelForm 的 FileField 保存文件