欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

Python3教程Web开发实战梳理-day7(看着不错)

发布时间:2024/9/20 python 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python3教程Web开发实战梳理-day7(看着不错) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

通过前面几天的的努力,ORM框架、Web框架和配置都已就绪,我们可以开始编写一个最简单的MVC,把它们全部启动起来。

MVC:Model-View-Controller,中文名“模型-视图-控制器”。
其中Python处理的URL函数就是C:Controller,Controller主要负责业务逻辑,比如检查用户名是否存在,取出用户信息等等;
而View负责显示逻辑,通过一些简单的替换变量,View生成最终用户看到的HTML,那View实质就是HTML模板(如Django等),而在本次Web开发就是Jinja2模板;
Model是用来传给View的,这样View在替换变量的时候,就可以从Model中取出相应的数据。

通过Web框架的@get和ORM框架的Model支持,可以很容易地编写一个处理首页URL的函数
新建handlers.py:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

' url handlers '

import re, time, json, logging, hashlib, base64, asyncio

from coroweb import get, post

from models import User, Comment, Blog, next_id

@get('/')
async def index(request):
    users = await User.findAll()
    return {
        '__template__': 'test.html',
        'users': users
    }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
‘_template_’指定的模板文件是test.html,其他参数是传递给模板的数据,所以我们在模板的根目录templates下创建test.html:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>Test users - Awesome Python Webapp</title>
</head>
<body>
    <h1>All users</h1>
    {% for u in users %}
    <p>{{ u.name }} / {{ u.email }}</p>
    {% endfor %}
</body>
</html>

这个html中逻辑部分用花括号{和百分号%来嵌套,这是jinja2模板的规范
和前段时间学习的Java中的JSP有些相似

接下来,运行app.py启动服务器,在浏览器访问

localhost:9000/

应该可以看到你的数据库表中users中存储的数据,如果没有的话可以自己手动添加几天记录再试一下。
这就是一个简单的MVC
————————————————
版权声明:本文为CSDN博主「永无乡」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/josephpai/article/details/76037662

总结

以上是生活随笔为你收集整理的Python3教程Web开发实战梳理-day7(看着不错)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。