flask - 小知识点

摘要:

  • 添加多条学生信息
  • 运算符
  • 分页
  • onetoone
  • 下拉列表
  • 传参问题
  • 原生SQL
  • 获得字典中值得方法
  • 获得列表中值的方法

  1. 添加多条学生信息

    s_list = [学生对象1, 学生对象2,..]
    db.session.add_all(s_list)
    
  2. 运算符

    filter(模型名.字段.运算符('xxx'))
    filter(模型名.字段 运算符 值 )
    
    运算符
    
    __lt__ 小于
    __le__ 小于等于
    
    __gt__ 大于
    __ge__ 大于等于
    
    in_ 在范围内
    
    order_by 排序
    
    limit 截取几个信息
    
    offset 跳过几个信息
    
    get 获取主键对应的信息
    
  3. 分页

    paginate对象
    
    pages 总页数
    total 总条数
    has_prev 是否有上页
    has_next 是否有下页
    prev_num
    next_num
    
    iter_pages() 当前一共多少页[1,2,3]
    
  4. onetoone

    在one的model中定义relationship字段 
    students = db.relationship('Student', backref='stu', lazy=True)
    
    1)通过one找many,one的对象.students,结果为many的结果
    2)通过many找one,many的对象.stu,结果为one的对象
    
  5. 下拉列表

    前端页面中:
    <form method='POST'>
        <select name="student">
                <option>请选择学生信息</option>
                {% for stu in stus %}
                    <option value="{{stu.s_id}}">{{stu.s_name}}</option>
                {% endfor %}
        </select>
        <input type='submit' value='提交'>
    </form>
    
    后端可以根据下拉列表的 name 获得下拉列表选项的值
    
    request.forms.get('student') 可以获取value
    
  6. 传参问题:

    /stu/?page=num/
    request.form.get('page', 1)
    
    @stu.route('/delete/<int:id>/')
    
    href = '/stu/num/'
    
    ?是给request请求传入参数
    /stu/num/ 是给url传入参数
    
  7. 原生SQL

    sql = 'insert into sc(s_id, c_id) values(%s,%s)' %(s_id, c_id)
    db.session.execute(sql)
    
  8. 获得字典中值得方法

    dict['键']=值
    dict.get('键','默认值')  默认值可不写 意思是当获取为空时,等于默认值
    
  9. 获得列表中值的方法

    courses = ['python', 'c++', 'java', 'HTML5', 'JavaScript']
    
    for course in courses:
    
        passs
    
    列表是可以迭代的
    
    request.from.get()
    可以获得一个值
    
    request.form.getlist()
    
    获得多个值的列表
    给每个input标签都加一个复选框, 写到一个form(表单中):
    for循环:
        <input type="checkbox" name="course" value="{{cou.c_id}}">{{cou.c_name}}
    
    当提交表单时使用getlist('course') 便可以获得多个选中的值, input标签通过name可以获得value
    

猜你喜欢

转载自blog.csdn.net/hello_syt_2018/article/details/80372497