数据库-视图函数

简介: 如果每次都要在shell中进行数据库的操作,估计是一件十分不爽的活动,因此最好是在视图函数中通过可视化的方式进行操作。hello.py中index()视图函数修改@app.

如果每次都要在shell中进行数据库的操作,估计是一件十分不爽的活动,因此最好是在视图函数中通过可视化的方式进行操作。

hello.py中index()视图函数修改

@app.route('/',methods=['GET','POST'])
def index():
    form = NameFome()
    if form.validate_on_submit():
        user = User.query.filter_by(username=form.name.data).first()
        if user is None:
            user = User(username = form.name.data)
            db.session.add(user)
            session['known'] = False
        else:
            session['known'] = True
        session['name'] = form.name.data
        form.name.data =''
        return redirect(url_for('index'))
    return render_template('index.html',form=form,name=session.get('name'), known=session.get('known',False))

变动说明:

  • 采用查询判断提交的user是否存在数据库中
  • 增加了数据库提交db.session.add(user)
  • 在session中增加known用于传递给模板

模板修改

{% extends 'base.html' %}
{% import "bootstrap/wtf.html" as wtf %}
{% block page_content %}
<div class='page_content'>
    <h1>Hello,
        {% if name %} {{ name }}
        {% else %}Stranger
        {% endif %}!
    </h1>
    {% if not known %}
    <p>Pleased to meet you </p>
    {% else %}
    <p>Happy to see you again</p>
    {% endif %}
</div>
{{ wtf.quick_form(form) }}
{% endblock %}

增加一个条件语句用于针对不同用户显示不同内容

目录
相关文章
|
SQL 数据挖掘 测试技术
南大通用GBase8s数据库:LISTAGG函数的解析
南大通用GBase8s数据库:LISTAGG函数的解析
|
7月前
|
存储 人工智能 数据库
视图是什么?为什么要用视图呢?数据库视图:定义、特点与应用
本文三桥君深入探讨数据库视图的概念与应用,从定义特点到实际价值全面解析。视图作为虚拟表具备动态更新、简化查询、数据安全等优势,能实现多角度数据展示并保持数据库重构的灵活性。产品专家三桥君还分析了视图与基表关系、创建维护要点及性能影响,强调视图是提升数据库管理效率的重要工具。三桥君通过系统讲解,帮助读者掌握这一常被忽视却功能强大的数据库特性。
2029 0
|
SQL 测试技术 数据库
|
SQL 数据库 数据库管理
数据库SQL函数应用技巧与方法
在数据库管理中,SQL函数是处理和分析数据的强大工具
|
存储 缓存 关系型数据库
MySQL 视图:数据库中的灵活利器
视图是数据库中的虚拟表,由一个或多个表的数据经筛选、聚合等操作生成。它不实际存储数据,而是动态从基础表中获取。视图可简化数据访问、增强安全性、提供数据独立性、实现可重用性并提高性能,是管理数据库数据的有效工具。
325 0
|
SQL 数据处理 数据库
|
SQL 关系型数据库 MySQL
SQL Server、MySQL、PostgreSQL:主流数据库SQL语法异同比较——深入探讨数据类型、分页查询、表创建与数据插入、函数和索引等关键语法差异,为跨数据库开发提供实用指导
【8月更文挑战第31天】SQL Server、MySQL和PostgreSQL是当今最流行的关系型数据库管理系统,均使用SQL作为查询语言,但在语法和功能实现上存在差异。本文将比较它们在数据类型、分页查询、创建和插入数据以及函数和索引等方面的异同,帮助开发者更好地理解和使用这些数据库。尽管它们共用SQL语言,但每个系统都有独特的语法规则,了解这些差异有助于提升开发效率和项目成功率。
2004 0
|
SQL 关系型数据库 MySQL
MySQL数据库基础第二篇(函数)
MySQL数据库基础第二篇(函数)
|
存储 SQL 关系型数据库
MySQL数据库进阶第四篇(视图/存储过程/触发器)
MySQL数据库进阶第四篇(视图/存储过程/触发器)
|
SQL 关系型数据库 MySQL
MySQL数据库练习——视图
MySQL数据库练习——视图
185 1