python flask 练习小结

一、有关源码已提交到GitHub,源码地址

二、一些基础介绍就跳过了(环境搭建、框架安装等)

三、我的练习项目的结构是借助其他语言框架的,比较习惯这样书写,根据每个功能不同分为不同的文件路径

四、

 1、文件引入,通过import引入,有以下几种方式

from appon.base.baseController import *

import cgi

import appon.controller.loginController as LoginC

 

2、python 中用到的session、redirect 等都需要通过 import 引入

 

3、flask 

app = Flask(__name__,template_folder='appon/view/',static_folder="",static_url_path="")

实例化对象,第一个参数默认值,一般不做修改,template_folder 表示模板路径,默认在入口文件同级,可以通过参数传递的方式修改默认模板路径

app.debug = True

设置项目为调试模式,方便开发者在开发过程中调试,注:bool值首字母必须大写

app.secret_key = secret_key

该参数用户保护session数据,如果不设置会报错

redirect(url_for('home'))

跳转到指定的路径

render_template('login/index.html')

模板渲染

通过 extends 在模板页面中加载通用模板文件,

extends 引入文件时,一个html 只能使用一次

{% extends "public/header.html" %}

通过 include 在模板页面中加载通用模板文件,

include 引入文件时,一个html 可以使用多次

{% include "public/header.html" %}

模板读取session数据

{{session['username']}}

 

4、连接MySQL

引入MySQL 文件

import mysql.connector
import mysql

 

引入MySQL配置文件

from appon.config.db import *

 

创建MySQL连接

# 创建数据库连接
conn = mysql.connector.connect(**dbInfo)

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = conn.cursor(dictionary = True)

dictionary = True,这个参数会把MySQL数据转化为k-v形式

sql具体执行过程可以见源码文件,需要说明的是每次创建连接后,该次sql任务完成以后需要依次执行:sql提交、游标关闭、连接关闭,然后把数据库结果返回给对应的请求方法

 

5、接收form表单数据

username = request.form['username']
if username  == False:
    return "username is empty"

通过request.form接收,每个索引为form表单对应的字段名,如果不存在则返回 False

 

6、session设置

# 可以设置session有效期
session.permanent = True
session["username"] = username
session["userid"]   = adminInfo['id']

读取session

# 读取session
session.get('username')

 

7、路由

@app.route('/login')
def login():
    return render_template('login/index.html')

默认在 localhost:5000/login,默认get访问

 

@app.route('/doLogin',methods=['GET', 'POST'])
def doLogin():
    return LoginC.doLogin()

指定访问方式

转载于:https://my.oschina.net/u/3268486/blog/3102417

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值