Django的auth模块怎么使用

Django的auth模块提供了用户身份验证和授权的功能。下面是使用Django的auth模块的一些常见操作:

创建用户:

from django.contrib.auth.models import User

user = User.objects.create_user(username='john', password='password123')

用户登录:

from django.contrib.auth import authenticate, login

user = authenticate(username='john', password='password123')
if user is not None:
    login(request, user)

这里的request是视图函数中的request对象。

用户登出:

from django.contrib.auth import logout

logout(request)

检查用户是否已登录:

if request.user.is_authenticated:
    # 用户已登录
else:
    # 用户未登录

用户授权:

from django.contrib.auth.decorators import login_required

@login_required
def my_view(request):
    # 用户已登录,进行后续操作

使用@login_required装饰器可以限制只有登录用户才能访问该视图函数。

检查用户权限:

if user.has_perm('myapp.can_edit'):
    # 用户具有编辑权限
else:
    # 用户没有编辑权限

这里的myapp.can_edit是一个权限标识符,可以在Django的权限管理中定义。

这只是Django的auth模块的一些常见用法,更多详细的使用方法可以查阅Django官方文档。

阅读剩余
THE END