1.config.py——配置文件

  1. DEBUG = True
  2.  
  3. DIALECT = 'mysql'
  4. DRIVER = 'mysqldb'
  5. USERNAME = 'root'
  6. PASSWORD = ''
  7. HOST = '127.0.0.1'
  8. PORT = ''
  9. DATABASE = 'db_demo1'
  10.  
  11. SQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(DIALECT,DRIVER,USERNAME,
  12. PASSWORD,HOST,PORT,DATABASE)
  13.  
  14. SQLALCHEMY_TRACK_MODIFICATIONS=True

  在这个文件里面是对配置一系列进行操作,比如数据库、debug之类的

  2.models.py  

  1. #encoding: utf-8
  2.  
  3. from exts import db
  4.  
  5. class Xixi(db.Model):
  6. __tablename__ = 'xixi'
  7. id = db.Column(db.Integer, primary_key=True, autoincrement=True)
  8. title = db.Column(db.String(100), nullable=False)
  9. content = db.Column(db.String(100), nullable=False)
  10. tags = db.Column(db.String(100), nullable=False)
  11. ll = db.Column(db.String(100), nullable=False)

  在这个py文件中,我们通过这个py文件中的类创建数据库

  3.exts.py

  1. #encoding: utf-8
  2.  
  3. from flask_sqlalchemy import SQLAlchemy
  4.  
  5. db = SQLAlchemy()

  是因为文件和文件之间会产生循环引用,通过这个文件可以消除循环引用

  4.manage.py

  1. #encoding: utf-8
  2.  
  3. from flask_script import Manager
  4. from demo_model import app
  5. from flask_migrate import Migrate, MigrateCommand
  6. from exts import db
  7. from models import Xixi
  8.  
  9. manager = Manager(app)
  10. #绑定app和db
  11. migrate = Migrate(app, db)
  12. #添加迁移脚本的命令到manager中
  13. manager.add_command('db', MigrateCommand)
  14.  
  15. if __name__ == '__main__':
  16. manager.run()

  5.XXX.py

  1. #encoding:utf-8
  2. from flask import Flask
  3. from exts import db
  4. from models import Xixi
  5. import config
  6. import pymysql
  7. pymysql.install_as_MySQLdb()
  8.  
  9. app = Flask(__name__)
  10. app.config.from_object(config)
  11. db.init_app(app) #app文件是个堆栈,我们手动加进里面,不然无法运行
  12.  
  13. # with app.app_context(): #联系上下文,创建数据库
  14. # db.create_all()
  15.  
  16. @app.route('/')
  17. def hello_world():
  18. return 'Hello World!'
  19.  
  20. if __name__ == '__main__':
  21. app.run()

关于python-flask中规范创建项目的几个关键py项目文件的更多相关文章

  1. Python flask中的配置

    当你开始学习Flask时,配置看上去是小菜一碟.你仅仅需要在config.py定义几个变量,然后万事大吉. 然而当你不得不管理一个生产上的应用的配置时,这一切将变得棘手万分. 你不得不设法保护API密 ...

  2. python flask中的代码约定

    在Python社区中有许多关于代码风格的约定.如果你写过一段时间Python了,那么也许对此已经有些了解. 我会简单介绍一下,同时给你一些URL链接,从中你可以找到关于这个话题的详细信息. 让我们提出 ...

  3. Flask 使用pycharm 创建项目,一个简单的web 搭建

    1:新建项目后 2:Flask web 项目重要的就是app 所有每个都需要app app=Flask(__name__)   3:Flask 的路径是有app.route('path')装饰决定, ...

  4. python Flask中html模版中如何引用css,js等资源

    已有静态页面,需要将其整合到瓶的项目中,需要搞清楚, 之前的HTML中的: <link rel =“stylesheet”href =“css / framework7.ios.css”> ...

  5. Python Qt5 Creator 使用创建项目教程

    1.下载Creator 4.2.1 2.点击文件-新建项目-QT-QT designer Form 然后 choose 3. 4.窗口组件选择 5.下一步,然后就可以自己设计了,,, 最后说一下,保存 ...

  6. python django 重新安装不能创建项目

    这里仅给大家做个思路提醒: 1.如果在别的地方找到一样的问题那就按别的方法去解决 2.如果是创建startproject的时候 报错:no module named 'mysite'  这个的话就和 ...

  7. 知了课堂 Python Flask零基础 笔记整理

    目录 起步 安装Python2.7: Python虚拟环境介绍与安装: pip安装flask: 认识url: URL详解 web服务器和应用服务器以及web应用框架: Flask 第一个flask程序 ...

  8. Python Flask高级编程之RESTFul API前后端分离精讲 (网盘免费分享)

    Python Flask高级编程之RESTFul API前后端分离精讲 (免费分享)  点击链接或搜索QQ号直接加群获取其它资料: 链接:https://pan.baidu.com/s/12eKrJK ...

  9. [python][flask] Flask 图片上传与下载例子(支持漂亮的拖拽上传)

    目录 1.效果预览 2.新增逻辑概览 3.tuchuang.py 逻辑介绍 3.1 图片上传 3.2 图片合法检查 3.3 图片下载 4.__init__.py 逻辑介绍 5.upload.html ...

随机推荐

  1. React Native踩坑之旅

    原文连接:http://www.studyshare.cn/blog-front/blog/details/1137 最近做一个app,使用React Native实现,如果严格按照RN官方文档去配置 ...

  2. mount.cifs permission denied

    [root@dev ~]# mount.cifs //192.168.9.155/APP /mnt/APP/ -o user=administrator,pass=dsff#$TTT 在检查帐号密码权 ...

  3. FI-盘盈盘亏借贷科目

    资产的盘盈盘亏一般分两步:第一步,批准前调整为账实相符:第二步,批准后结转处理.库存现金.存货.固定资产.工程物资的盘盈盘亏的账务处理见下图: 以上科目中可能并不完整,比如“原材料等科目”就可能包括“ ...

  4. cxgrid属性说明,每次用的时候费时费力查找。

    由层得到数据表名: procedure TFB_PatientWaiting.cxgrdbtblvwGrid1DBTableView_MyPatienWaitingDblClick( Sender: ...

  5. U3D学习资料收集

    1,风宇冲的博客 2,gkEngine 3,@浅墨_毛星云 4,聊聊引擎底层如何实现BRDF渲染算法

  6. 二叉搜索树的第K大节点

    题目描述 给定一颗二叉搜索树,请找出其中的第k大的结点. 分析 对二叉搜索树进行逆向中序遍历(先右再左),则遍历序列是降序排序的,因此中序遍历一颗二叉搜索树,可以很容易的得到它的第k大的节点.使用一个 ...

  7. lombok踩坑与思考

    虽然接触到lombok已经有很长时间,但是大量使用lombok以减少代码编写还是在新团队编写新代码维护老代码中遇到的. 我个人并不主张使用lombok,其带来的代价足以抵消其便利,但是由于团队编码风格 ...

  8. 机器学习--Xgboost调参

    Xgboost参数 'booster':'gbtree', 'objective': 'multi:softmax', 多分类的问题 'num_class':10, 类别数,与 multisoftma ...

  9. spring boot + apache camel 传输文件

    一 sftp搭建略 这里简单说一下为什么使用sftp.ftp和sftp各有优点,差别并不是太大.sftp安全性好,性能比ftp低.ftp对于java来说并不复杂,效率也高.之所以使用sftp主要是可以 ...

  10. 从裸机到实时操作系统RTOS

    最近有点闲,公司新年过后一直没有项目,手头上维护的两个程序也比较稳定. 想起来去年做的商业时钟,做了一半,销售反馈回来说,市场不明朗,不建议往下开展,就搁置了,趁着现在有空,把他捡起来. 原来的代码都 ...