Python 用户可以将帐户切换到其他用户

Python 用户可以将帐户切换到其他用户,python,django,postgresql,Python,Django,Postgresql,我有一个url路径('dashboard/',views.dashboard,name='dashboard'), 问题是当用户登录时,他可以更改url中的User\u id变量并切换到另一个用户帐户。我的问题是如何防止这种行为 我应该在模板或其他地方更改某些内容吗?您不应该在URL中传递用户id。您可以使用request.user获取登录用户: # app/urls.py from django.urls import path urlpatterns = [ path('dash

我有一个url
路径('dashboard/',views.dashboard,name='dashboard'),

问题是当用户登录时,他可以更改url中的
User\u id
变量并切换到另一个用户帐户。我的问题是如何防止这种行为

我应该在模板或其他地方更改某些内容吗?

您不应该在URL中传递
用户id
。您可以使用
request.user
获取登录用户:

# app/urls.py

from django.urls import path

urlpatterns = [
    path('dashboard/', views.dashboard, name='dashboard')
]
因此,在视图中,您可以使用
请求。用户

# app/views.py

from django.contrib.auth.decorators import login_required

@login_required
def dashboard(request):
    myuser = request.user
    # ...
#app/views.py
从django.contrib.auth.decorators导入所需的登录名
@需要登录
def仪表板(请求):
myuser=request.user
#…
通过使用,您可以防止在没有用户登录时触发视图。

您不应在URL中传递
用户id
。您可以使用
request.user
获取登录用户:

# app/urls.py

from django.urls import path

urlpatterns = [
    path('dashboard/', views.dashboard, name='dashboard')
]
因此,在视图中,您可以使用
请求。用户

# app/views.py

from django.contrib.auth.decorators import login_required

@login_required
def dashboard(request):
    myuser = request.user
    # ...
#app/views.py
从django.contrib.auth.decorators导入所需的登录名
@需要登录
def仪表板(请求):
myuser=request.user
#…
通过使用,可以防止在没有用户登录时触发视图