python中使用Django对url路径进行处理

一丧:生活这么烂,什么时候可以死掉。

首先我们要在虚拟环境的url.py里对传入的请求进行正则匹配决定指向那个文件夹的那个文件进行处理。
例如:

url(r'^',include('user.urls'))

笔者事先在user中创建了urls.py文件。
这句代码的写法为:r’接收的路径进行匹配’,include(“指定处理模块”)。
将传入的路径进行正则匹配后分类,传入下一文件。
笔者在user中创建的urls.py文件中,笔者进行了二次分类,并传入view.py文件的指定函数进行处理。
笔者代码如下:

from django.conf.urls import include, url
from user import views
    urlpatterns = [
        # 127.0.0.1/index
        url(r'^index$',views.index),#指定函数去处理
        url(r'^user$',views.user_hahha)
    ]

而我们的view.py文件如何处理呢?
我们首先导入一个新的包来接收请求。

from django.http import HttpResponse

在接收请求后我们就需要用函数进行处理了
例如:

def index(request):
        return HttpResponse('欢迎')

注:必须有一个参数来接收请求,必须有抛出一个返回结果(去处理接受到的url路径)

使用页面模板

使用模板前,我们需要先将模板放入虚拟环境下,并添加类似系统环境变量一样,方便我们的Django去查找模板。
在settings.py文件下找到DIRS进行修改:

'DIRS': [os.path.join(BASE_DIR,'模板文件夹名')],

views.py文件中进行调用

def index(request):
    return render(request,'register.html')

值得注意的是render方法,前两个为必填,内容为接收的路径和指向的模板
既然如此我们把数据库放进去怎么样?
我们还是在views.py文件中,分别提取数据库

def user_show(request):
        user_obj = UserInfo.objects.all()
        context = {'user_obj':user_obj}
        return render(request,'show_user.html',context=context)

注意我们的基本思路就是把数据提取出来传入页面。
在页面中显示,我们的html页面如下:

<!DOCTYPE html>
        <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>Title</title>
        </head>
        <body>
        {#{{ user_obj.user_name }}#}
        <ul>
            {% for obj in user_obj %}
            <li>{{ obj.user_name }}</li>
        {% endfor %}
        </ul>
        </body>
        </html>

接下来就是打开查看了,会显示所有的用户名

猜你喜欢

转载自blog.csdn.net/dreamingcrazy/article/details/82526862