欢迎访问宙启技术站
智能推送

Django.contrib.auth.admin中的用户注册和登录管理

发布时间:2024-01-19 06:42:56

Django.contrib.auth.admin是Django框架中的一部分,提供了用户注册和登录管理的功能。下面是一个使用例子,详细介绍了如何在Django中使用Django.contrib.auth.admin来实现这些功能。

首先,在你的Django项目中打开settings.py文件,找到INSTALLED_APPS变量,并添加'django.contrib.auth'和'django.contrib.admin':

INSTALLED_APPS = [
    ...
    'django.contrib.auth',
    'django.contrib.admin',
    ...
]

然后,在项目的urls.py文件中,引入django.contrib.auth.urls,并将admin的URL路由添加到urlpatterns列表中:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    ...
    path('admin/', admin.site.urls),
    path('accounts/', include('django.contrib.auth.urls')),
    ...
]

接下来,打开终端,运行以下命令来创建superuser:

python manage.py createsuperuser

然后按照提示输入用户名和密码,创建一个管理员用户。

现在,可以登录到管理后台并创建其他用户了。在浏览器中打开http://localhost:8000/admin,使用刚刚创建的管理员用户进行登录。

创建用户:

在admin页面中,点击“Users”选项,然后点击“Add”按钮创建一个新的用户。在弹出的表单中,输入新用户的用户名、密码、Email等信息,并保存。

登录:

在浏览器中打开http://localhost:8000,点击页面右上方的“Log in”链接。进入登录页面后,输入刚刚创建的用户的用户名和密码,然后点击登录按钮。

登录成功后,可以继续访问其他需要认证的页面。

授权访问:

在Django中,使用装饰器@login_required来限制只有登录用户才能访问某个视图函数。例如,创建一个视图函数需要认证用户才能访问的页面,在views.py文件中添加以下代码:

from django.contrib.auth.decorators import login_required
from django.shortcuts import render

@login_required
def my_view(request):
    return render(request, 'my_template.html')

在urls.py文件中添加对应的URL路由:

from . import views

urlpatterns = [
    ...
    path('my-view/', views.my_view, name='my-view'),
    ...
]

现在只有登录用户才能访问http://localhost:8000/my-view/页面了。

以上就是使用Django.contrib.auth.admin进行用户注册和登录管理的一个例子,通过该例子你可以学会如何在Django中使用Django.contrib.auth.admin来实现这些功能。