Django——使用APP

2021-01-13 15:39:23 浏览数 (1)

Django中的APP的功能就是使得项目更加规范化,创建APP把项目相应的功能划分成不同的模块。

创建APP命令:

代码语言:javascript复制
python manage.py startapp myapp1

这样就创建了一个名为myapp1的APP。你就能在你的项目下面看到一个名为myapp1的目录。

创建完成APP以后,Django并不会感知到APP,需要我们在settings.py文件中进行设置。

代码语言:javascript复制
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp1.apps.Myapp1Config',  # 加上自己的APP
    # 'myapp1',      不推荐这种写法。
]

既然,我们已经有了一个myapp1了,现在把刚才写的登录功能放到myapp1中去。在此之前,需要大概了解一下myapp1下文件都是干什么的。如下图所示,以后会详细介绍。

现在,我们urls.py中的函数放到view.py中去。然后在urls.py中导入view模块。具体代码如下:

代码语言:javascript复制
# urls.py文件

from django.contrib import admin
from django.urls import path
from myapp1 import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('login/', views.login),  # 这样,就是将login这个url和叫做login的函数关联起来。
    path('index/', views.index),
]
代码语言:javascript复制
#views.py文件

from django.shortcuts import render, HttpResponse, redirect

# Create your views here.


def login(request):  # login函数
    if request.method == "GET":  # 前端如果是get请求
        return render(request, 'login.html')  # 返回HTML页面。
    elif request.method == "POST":  # 前端如果是post请求
        username = request.POST.get("username")  # 获取POST请求中的username值
        password = request.POST.get("password")  # 获取密码值
        if username == "zy" and password == "12345":
            return redirect("/index/")
        else:  # 如果用户名或者密码错误,返回登录页面
            return render(request, "login.html")


def index(request):  # index函数
    return render(request, "index.html")

好了,这一篇就介绍到这里。

0 人点赞