简介:

基础搭建好了,开始读写数据库吧。毕竟写的程序,也没什么高深的,就是CRUD,中文说是增删改查。

一:在数据库中增加测试数据。

在项目根目录建立init_test.py

from config import Base,db_session
from models.models import *
from app.app01.app01_models import * add_public=public(
name='jack_public',
email='jack_public@jackadam.ml',
)
add_private=private(
name='jack_private',
email='jack_private@jackadam.ml',
)
db_session.add(add_public)
db_session.add(add_private)
db_session.commit()
db_session.remove()
public_user=public.query.filter_by(public_name='jack_public').first()
print(public_user.public_email)
private_user=private.query.filter_by(private_name='jack_private').first()
print(private_user.private_email)

执行结果为:
jack_public@jackadam.ml
jack_private@jackadam.ml
读取两个邮件地址。

二:在app/main中使用

修改/app/main/views.py

from flask import Blueprint
from models.models import * # 新加,引入models
from app.app01.app01_models import * # 新加,引入models main = Blueprint('main', __name__) @main.route('/')
def show():
public_user = public.query.filter_by(public_name='jack_public').first() # 新增数据库查询
private_user = private.query.filter_by(private_name='jack_private').first() # 新增数据库查询
msg = public_user.public_email + '<p>' + private_user.private_email # 组织返回代码
return msg # 修改返回内容为刚组织好的代码

三:本机测试

我们只修改了默认首页的返回。首页返回数据如下

四:同步到服务器

syncthing同步

五:生成新docker镜像

./rebuild.sh

六:测试服务器运行状态

我的服务器及发布端口是8800

七:写个测试脚本

上次就是部署之后老断开数据库连接。

那么这次写个脚本进行循环测试:

import requests
r=requests.get('http://192.168.1.3:8800')
print(r.status_code)
import time
t2 = time.strftime('%Y-%m-%d %H:%M:%S')
print(t2)
i = 1
while True:
try:
r=requests.get('http://192.168.1.3:8800/app02',timeout=2)
if r.status_code !=200:
print(time.strftime('%Y-%m-%d %H:%M:%S')+'-----------bed')
break
else:
print(time.strftime('%Y-%m-%d %H:%M:%S')+'--ok')
time.sleep(1)
i+=1
except:
print(time.strftime('%Y-%m-%d %H:%M:%S') + '-----------bed')

代码写的烂,也没存记录。

就是一直傻跑而已。

如果错了,那就停了

十:遗漏

现在还差路由,静态文件,权限几部分。

flask项目结构(五)使用数据库的更多相关文章

  1. 一个比较良好的flask项目结构

    一个比较良好的flask项目结构 project/ app/                    # 整个程序的包目录 static/                 # 静态资源文件 js/    ...

  2. Flask项目中使用mysql数据库启动项目是发出警告

    Flask项目中使用mysql数据库启动项目是发出警告: Warning: (1366, "Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA ...

  3. flask项目结构(四)使用sqlalchemy和alembic

    简介 其实我不是啥正经人,错了,不是啥正经程序员,所能想到的估计也就码农一级吧,高级程序员,搞什么算法,什么人工智能,大数据计算…………离我还太遥远. 但是这并不妨碍我继续学习,继续写垃圾小程序. 反 ...

  4. flask项目结构(三)使用蓝图

    简介: Flask中的蓝图旨在针对这些情况: 把一个应用分解成一系列的蓝图.对于大型的应用是理想化的:一个项目能实例化一个应用, 初始化一些扩展,以及注册一系列的蓝图. 以一个 URL 前缀和/或子域 ...

  5. flask项目结构(一)mariadb

    简介: 本文主要是根据自己所学,创建一个flask项目,使用sqlalchemy,alembic,mariadb,bootstrap,APScheduler,selenium,request…………技 ...

  6. flask项目结构(二)创建flask,同步docker

    简介: 建立flask容易,那么部署就比较麻烦了,配这个,配那个,更新………… 所以我从构建,就考虑部署的问题,使用docker部署. 程序都打包进docker,本博客有相关文章. pycharn直接 ...

  7. python flask 项目结构

    1. 今天学习遇到一个问题,以前项目比较简单,所有的@app.route 都是写在一个文件app.py 中的,然后启动也是在这个文件中启动app.run .但是我今天 想写一个新的模块, 于是我新启了 ...

  8. flask项目结构(六)快速开发后台flask-admin

    简介: Flask-admin 相当django的xadmin吧! 快速装配一个后台用来管理数据. Flask-admin也是有使用局限性的,他只适合开发小型快速的应用,不适合那种大型并发性高,逻辑复 ...

  9. Flask 项目结构(仅供参考)

    project/ app/ # 整个程序的包目录 static/ # 静态资源文件 js/ # JS脚本 css/ # 样式表 img/ # 图片 favicon.ico # 网站图标 templat ...

随机推荐

  1. JAVA基础知识总结:十六

    一.File类 主要用于文件操作 对存储在磁盘上的文件和目录的抽取和封装 二.IO流 1.概念 File类只能创建或者修改文件或者文件夹的层级结构,如果要访问文件中的内容的话,就需要用到IO流(Inp ...

  2. (转)stm32启动文件详解

    在<<STM32不完全手册里面>>,用的是STM32F103RBT6,所有的例程都采用了一个叫STM32F10x.s的启动文件,里面定义了STM32的堆栈大小以及各种中断的名字 ...

  3. Genome-wide gene-environment analyses of depression and reported lifetime traumatic experiences in UK Biobank

    Genome-wide gene-environment analyses of depression and reported lifetime traumatic experiences in U ...

  4. 记 linux 下面初次使用的convert 工具完成拼长图功能

    今天,遇到了一个需要把大量图片合并到一个长图的功能.本来找了各种图片处理界顶顶大佬.. “PS(手动一张张 的加).光影魔术手(批处理功能没有看到拼图功能).美图秀秀(可以有个拼图,限制30张,而且需 ...

  5. Python自学:第二章 数字 整数

    >>>2 + 3 5 >>>3 - 2 1 >>>3 * 2 6 >>>3 / 2 1.5

  6. 关于新手用java写题目,遇到的字符和字符串问题

    我看到一遍很好的博客: https://blog.csdn.net/qq_37267015/article/details/78738512 1.首先了,java之中,没有像C语言那样的getchar ...

  7. android主流开源库

    网络框架:Volley 和 Async Volley特点:能使网络通信更快,更简单.更健壮 Get,Post网络请求及网络图像的高效率 Async:高效的网络数据请求, 解析成json 持久化cook ...

  8. python记录_day27 tcp/ip五层模型

    ## 网络协议按照不同的功能分为多层,目前存在的模型有osi七层模型.tcp/ip五层和tcp/ip四层模型 我们主要用的是tcp/ip五层模型 那么每层的作用是什么呢,现在就从设计者的角度自下到上逐 ...

  9. python记录_day12 生成器

    什么是生成器? 生成器的实质就是迭代器,我们能够从生成器中一个一的拿值 python中获取生成器的方式有三种: 1.通过生成器函数 2.通过生成器表达式 3.通过数据转换也可以获取生成器(某些对象执行 ...

  10. Navicat 的安装及破解

    本地环境: ubutun 14 1.安装. ①先老实选择官方试用版安装(不推荐在各个下载平台去下载) 中文版:http://www.navicat.com.cn/download/navicat-fo ...