当前位置: 首页 > news >正文

深圳人才网站建设南京网站南京网站设计制作公司

深圳人才网站建设,南京网站南京网站设计制作公司,led灯具网站模板,丹阳网站建设咨询概要 Python web 开发已经有了相当长的历史#xff0c;从最早的 CGI 脚本到现在的全栈 Web 框架#xff0c;现在已经成为了一种非常流行的方式。 Python 最早被用于 Web 开发是在 1995 年#xff08;90年代早期#xff09;#xff0c;当时使用 CGI 脚本编写动态 Web 页面… 概要 Python web 开发已经有了相当长的历史从最早的 CGI 脚本到现在的全栈 Web 框架现在已经成为了一种非常流行的方式。 Python 最早被用于 Web 开发是在 1995 年90年代早期当时使用 CGI 脚本编写动态 Web 页面。2004 年 Django 框架发布它是一个高度模块化的框架提供了许多开箱即用的功能使得 Web 开发更加容易和快速。Flask 框架于 2010 年发布是一个轻量级的框架它提供了更少的默认功能但也更灵活允许开发者根据需要添加或删除功能。 1. 什么是 Flask Flask 是一款 Python 的轻量级 Web 框架它的特点是简单易用、灵活性高。Flask 框架可以快速搭建 Web 应用程序是一个很好的选择。Flask 框架的核心思想是 WSGIWeb Server Gateway Interface它定义了 Web 服务器和 Web 应用程序之间的通信协议。 1.1 Flask 的优势 简单易用Flask 框架的 API 简单易用开发者能够快速上手。MVC设计模式。 灵活性高Flask 框架的扩展性高可以根据实际需求进行扩展。 轻量级Flask 框架的代码量小运行速度快。 文档丰富Flask 框架的文档非常详细开发者能够轻松查找所需信息。 1.2 Flask 的缺点 轻量级Flask 框架的轻量级也是它的缺点之一它的功能相对有限需要自己进行扩展。 不适合大型应用程序Flask 框架适合小型应用程序对于大型应用程序来说可能会出现性能瓶颈。这时可以考虑Django。 1.3 Flask 的基础组件 Flask 框架由以下几个基础组件组成 路由定义 URL 和视图函数之间的映射关系。 视图函数处理请求并返回响应。 模板生成 HTML 页面。 表单处理用户提交的数据。 扩展实现 Flask 框架的扩展功能。 2. 基础使用 2.1 安装 Flask 在开始使用 Flask 之前需要先安装 Flask。可以使用 pip 命令进行安装 pip install Flask2.2 Hello World 下面是一个简单的示例展示了如何使用 Flask 框架输出 Hello World。 新建一个app.py文件输入如下内容。 Linux下执行 export FLASK_APPapp.py flask run 打开浏览器访问 http://127.0.0.1:5000/ 即可。 如果是 windows 执行 set FLASK_APPapp.py flask run from flask import Flaskapp  Flask(__name__)app.route(/) def hello_world():return Hello, World!2.3 路由和视图函数 在 Flask 中路由和视图函数是紧密相关的。路由用于将 URL 映射到视图函数上视图函数则处理请求并返回响应。为了实现路由和视图函数我们可以使用 Flask 中的 app.route 装饰器。下面是一个简单的示例 from flask import Flaskapp  Flask(__name__)app.route(/) def index():return This is the index page.app.route(/hello) def hello():return Hello, World!app.route(/) 和 app.route(/hello) 分别定义了两个路由index() 和 hello() 则是两个视图函数。 2.4 模板 模板是 Flask 中生成 HTML 页面的一种方式。Flask 支持多种模板引擎包括 Jinja2、Mako、Tenjin 等。在本文中我们使用 Jinja2 作为模板引擎。 下面是一个简单的示例展示了如何使用模板生成 HTML 页面 from flask import Flask, render_templateapp  Flask(__name__)app.route(/) def index():return render_template(index.html, titleHome)app.route(/hello) def hello():return render_template(hello.html, nameFlask)render_template() 函数用于渲染模板第一个参数指定模板名称第二个参数则是模板中使用的变量。 2.5 静态文件 静态文件包括 CSS、JavaScript、图片等。在 Flask 中可以使用 url_for() 函数生成静态文件的 URL。 下面是一个简单的示例 !DOCTYPE html html headmeta charsetUTF-8title{{ title }}/titlelink relstylesheet href{{ url_for(static, filenamestyle.css) }} /head bodyh1{{ title }}/h1pHello, Flask!/p /body /htmlurl_for(static, filenamestyle.css) 生成了静态文件 style.css 的 URL。 2.6 表单 表单是 Web 应用程序中常用的一种交互方式。在 Flask 中可以使用 request 对象获取用户提交的表单数据。 下面是一个简单的示例 from flask import Flask, requestapp  Flask(__name__)app.route(/login, methods[GET, POST]) def login():if request.method  POST:username  request.form[username]password  request.form[password]if username  admin and password  password:return Login success!else:return Invalid username or password.else:return form methodpostlabelUsername:/labelinput typetext nameusernamelabelPassword:/labelinput typepassword namepasswordinput typesubmit valueLogin/formrequest.form 可以获取 POST 请求提交的表单数据。 3. 实战案例构建一个 Todo 待办 应用 接下来我们将通过一个实战案例来介绍如何使用 Flask 框架构建一个 Todo 应用。 3.1 数据库设计 首先我们需要设计数据库。在本文中我们使用 MySQL 作为数据库。下面是数据库的设计 CREATE TABLE todos (id int(11) NOT NULL AUTO_INCREMENT,title varchar(255) NOT NULL,completed tinyint(1) NOT NULL DEFAULT 0,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;3.2 后端实现 接下来实现后端的功能 from flask import Flask, render_template, request, redirect, url_for import pymysql.cursorsapp  Flask(__name__) app.config[SECRET_KEY]  secretconnection  pymysql.connect(hostlocalhost,userroot,passwordpassword,dbtodo,charsetutf8mb4,cursorclasspymysql.cursors.DictCursor )app.route(/) def index():with connection.cursor() as cursor:cursor.execute(SELECT * FROM todos)todos  cursor.fetchall()return render_template(index.html, todostodos)app.route(/add, methods[POST]) def add():title  request.form[title]with connection.cursor() as cursor:cursor.execute(INSERT INTO todos (title) VALUES (%s), title)connection.commit()return redirect(url_for(index))app.route(/toggle/int:todo_id, methods[POST]) def toggle(todo_id):with connection.cursor() as cursor:cursor.execute(SELECT completed FROM todos WHERE id  %s, todo_id)completed  cursor.fetchone()[completed]cursor.execute(UPDATE todos SET completed  %s WHERE id  %s, (not completed, todo_id))connection.commit()return redirect(url_for(index))app.route(/delete/int:todo_id, methods[POST]) def delete(todo_id):with connection.cursor() as cursor:cursor.execute(DELETE FROM todos WHERE id  %s, todo_id)connection.commit()return redirect(url_for(index))解析建立数据库连接并定义四个路由 /显示所有的 Todo。 /add添加一个 Todo。 /toggle/标记一个 Todo 是否已完成。 /delete/删除一个 Todo。 3.3 前端实现 最后实现前端的功能 !DOCTYPE html html headmeta charsetUTF-8titleTodo/titlestyle.completed {text-decoration: line-through;}/style /head bodyh1Todo/h1form methodpost action{{ url_for(add) }}labelTitle:/labelinput typetext nametitleinput typesubmit valueAdd/formul{% for todo in todos %}li{% if todo.completed %} classcompleted{% endif %}form methodpost action{{ url_for(toggle, todo_idtodo.id) }}input typecheckbox namecompleted {% if todo.completed %}checked{% endif %}{{ todo.title }}/formform methodpost action{{ url_for(delete, todo_idtodo.id) }}input typesubmit valueDelete/form/li{% else %}pNo todos./p{% endfor %}/ul /body /html我们使用了 Jinja2 模板引擎展示了 Todo 列表、添加 Todo、标记 Todo 是否已完成、删除 Todo 等功能。 4. 技术总结 今天介绍了如何使用 Flask 框架进行 Web 开发并实战开发了一个轻量级的web应用。Flask 是一款 Python 的轻量级 Web 框架具有简单易用、灵活性高等优点初学者也能快速上手。
http://www.hkea.cn/news/14299184/

相关文章:

  • 个人网站备案icp汽车保险网站
  • 石家庄网站建设吧几大网站类型
  • 快速做网站公司报价杭州手机网站开发
  • 大理工程建设信息网站上传wordpress后
  • 网站制作需求文档网站的标签
  • 专业微信网站特种证书查询入口
  • 西宁网站开发多少钱河南百度推广代理商
  • 深圳网站建设服务器用几个域名做网站好
  • 网站开发工程师应聘书范文用个人的信息备案网站
  • 动漫网站设计方案北京到安阳火车票
  • fullpage做的网站个人网站建设策划书怎么写
  • 资兴市住房和城乡建设局网站零基础小程序开发教程
  • 在别人网站挂黑链wordpress 指定文章链接
  • wordpress 删除的模板北京网站seo策划
  • flash下载网站顺德购物网站建设
  • 汕头专业的开发网站方案南阳网站网站建设
  • 东莞政务网站建设方案wordpress 适合程序员主题
  • 网站建设 镇江网站流量少
  • 网站兼容网站做可以退款吗
  • 网站外链价格游戏网站wordpress
  • 从网络安全角度考量_写出建设一个大型电影网站规划方案怎样注册自己的货运网站
  • 搜索网站大全排名为自己家秘方做网站
  • 智慧团建网站官网电脑版新年贺卡图片 手工制作
  • 苏州企业网站建设服务好查询商品价格走势的网站
  • 网站建设头像网址大全123设为主页
  • 深圳网站制作公司在那个人网站花多少钱
  • 安徽长江建设集团有限公司网站人社网站和微信平台建设方案
  • 酒泉网站seowordpress进不去设置会乱码
  • 那做网站网络推广运营公司
  • 高端网站建设域名注册学校网站建设考评办法