flask基础知识2

css 两种加载方法

  1. 方法一 推荐
    link rel=”stylesheet” href=”/static/css/index.css”
  2. 方法二
    link rel=”stylesheet” href=”{{ url_for(‘static’, filename=’css/index.css’) }}”

jinja2 用法 同django

  1. for
  2. if
  3. loop.first/last/index/revindex

过滤器 |

  1. safe 展示样式
  2. striptags 消除样式
  3. length 长度
  4. trim 消除空格
  5. first 第一个字母
  6. last 最后一个字母
  7. upper 大写
  8. lower 小写
  9. capitalize 首字母大写

config 全局

  1. 参数的配置,都在里面,可以在任意地方遍历查看

定义函数 macro

  1. 定义函数
    {% macro say(name) %}
    {{name}}: 你是真的帅
    {% endmacro %}
  2. 调用函数
    {% from ‘function.html’ import say %}
    {{ say(‘郑欢欢’) }}

数据库 mysql

安装包

  1. pip install flask-sqlalchemy
  2. pip install pymysql

环境配置,注册 init.py

  • from flask_sqlalchemy import SQLAlchemy
    1. app.config[‘SQLALCHEMY_DATABASE_URI’] = ‘mysql+pymysql://root:123456@localhost:3306/flask3’
    2. app.config[‘SQLALCHEMY_TRACK_MODIFICATIONS’] = False
    3. SQLAlchemy(app=app)

数据库框架的创建,models.py

  1. 导入数据库包
  2. 实例化一个对象 db = SQLAlchemy()
  3. 创建表结构,区别于django
 class Student(db.Model):
    s_id = db.Column(db.INTEGER, primary_key=True, autoincrement=True)
    s_name = db.Colum(db.String(20), unique)
    s_age = db.Colum(db.INTEGER, default=18)

    _tablename__ = 'student' 

数据库的操作 views.py

  1. db.create_all() 创建表
  2. db.drop_all() 删除表

    • db.session.add(x) x为实例化的表,添加的内容
    • db.session.commit() 提交到数据库

    • db.session.delete(x)
    • db.session.commit()

  3. (1) 方法一 推荐
    * Student.query.filter_by(s_id=6).update({‘s_name’: ‘哈哈’})
    * db.session.commit()
    (2)方法二 不推荐
    * stu = Student.query.filter_by(s_id=6).first()
    * stu.s_name = ‘哈哈’
    * db.session.commit()

  4. (1) 方法一,filter_by 推荐
    * stus = Student.query.filter_by(s_id=5)
    (2)方法二 原生sql语句
    * sql = ‘select * from student’
    * stus = db.session.execute(sql)
    (3) 方法三 , filter 不推荐
    * stus = Student.query.filter(Student.s_id==5)

重点巩固知识

  1. jinja2
  2. 页面的继承,页面方法的定义
  3. MySQL数据库的增删查改,配置,使用

猜你喜欢

转载自blog.csdn.net/zhangli709/article/details/80341448