Flask web开发之路十四

今天开始Flask的实战,创建一个项目,实现包括用户登录、注册、注销、发表博客、评论以及检索等功能

首先给出项目结构:

1.config.py文件:

存放各种配置信息

import os

# dialect+driver://username:[email protected]:port/database
DIALECT = ‘mysql‘
DRIVER = ‘pymysql‘
USERNAME = ‘用户名‘
PASSWORD = ‘密码‘
HOST = ‘域名‘
PORT = ‘端口号‘
DATABASE = ‘数据库名‘

SQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(DIALECT,DRIVER,USERNAME,PASSWORD,HOST,PORT,DATABASE)
SQLALCHEMY_TRACK_MODIFICATIONS = False
DEBUG = True

SECRET_KEY = os.urandom(24)#用于生成session密钥

2.decorators.py文件存放限制登录的装饰器,之后会提到

3.exts.py文件存放数据库实例化对象

from flask_sqlalchemy import SQLAlchemy

db = SQLAlchemy()

4.hyqbook.py主app文件

5.manage.py文件,存放命令行窗口操作的一系列代码,包括数据库初始化,数据库迁移,数据库更新等

from flask_script import Manager
from flask_migrate import Migrate,MigrateCommand
from hyqbook import app
from exts import db
from models import User,Question,Answer

manager = Manager(app)

# 使用Migrate绑定app和db
migrate = Migrate(app,db)

# 添加迁移脚本的命令到manager中
manager.add_command(‘db‘,MigrateCommand)

if __name__ =="__main__":
    manager.run()

5.models..py文件,存放数据模型

原文地址:https://www.cnblogs.com/yqpy/p/8667592.html

时间: 2024-10-09 04:08:46

Flask web开发之路十四的相关文章

Flask web开发之路二

今天创建第一个flask项目,主app文件代码如下: # 从flask这个框架导入Flask这个类 from flask import Flask #初始化一个Flask对象 # Flasks() # 需要传递一个参数__name__ # 1. 方便flask框架去寻找资源 # 2. 方便flask插件比如Flask-Sqlalchemy出现错误的时候,好去寻找问题所在的位置 app = Flask(__name__) # @app.route是一个装饰器 # @开头,并且在函数的的上面,说明是

Flask web开发之路三

今天写一个URL传参.反转URL.页面跳转和重定向 URL传参 主app文件代码: from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' @app.route('/article/<id>') def article(id): return '您请求的参数是: %s' %id if __name__ == '__main__': app.run

Flask web开发之路六

今天写SQLAlchemy数据库 首先介绍ORM的概念: ORM,Object类,Relationship:关系,Mapping:映射,也就是模型关系映射 flask-sqlalchemy是一套ORM框架 ORM的好处:可以让我们操作数据库跟操作对象一样,非常方便,因为一个表就抽象成一个类,一条数据就抽象成该类的一个对象 ### Flask-SQLAlchemy的使用:1. 初始化和设置数据库配置信息: * 使用flask_sqlalchemy中的SQLAlchemy进行初始化: ``` fro

Flask web开发之路九

首先介绍循环引用的问题: 当一个模块需要引用另一个模块的类,而另一个模块又需要引用这个模块的类时,就出现了循环引用,而没法导入类,这时候可以切断其中一条引用路径,增加一个模块 项目结构: models_sep.py代码: from flask import Flask from models import Article from exts import db import config app = Flask(__name__) app.config.from_object(config) d

WEB开发之路——基础部分

WEB开发之路 受BBC的<BBC: Brain Story>和<BBC: The Brain - A Secret History>的影响,我一直有志于探究人类大脑,2015年的暑假,到华南理工大学的国家重点实验室-生物医学工程实验室,实习了一个月的时间,学习大脑图像处理—Matlab语言来处理大脑的灰质和白质的图像,核心知识在计算机方面,只有掌握计算机这门工具,才能更好的分析大脑.因此,在我的坚决要求之下,2016年的暑假,家人给我联系了一家软件公司实习,从最有活力的WEB开发

flask web开发笔记 -- 快速入门

flask web开发笔记 -- 快速入门 初始化 Flask应用需要创建应用实例. Web服务器通过Web Server Gateway Interface (WSGI)协议把从客户端接收到的请求传递给该对象.应用程序实例是Flask类对象,通常创建如下: from flask import Flask app = Flask(__name__) Flask类的构造函数唯一的参数是应用的主模块名或包名,用于确定应用的根目录.对于大多数应用程序,使用Python的__name__变量即可. 路由

《Flask Web开发:基于Python的Web应用开发实战》pdf 完整版免费下载

<Flask Web开发:基于Python的Web应用开发实战>.pdf pdf 完整版免费下载: https://u253469.ctfile.com/fs/253469-292665036 更多电子书下载: http://hadoopall.com/book 内容简介 本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书. ? 学习Flask应用的基本结构,编写示例应用: ? 使用必备的组件,包括模板.数据库.Web表单和电子邮件支持: ?

Chrome浏览器扩展开发系列之十四:本地消息机制Native messagin

Chrome浏览器扩展开发系列之十四:本地消息机制Native messaging 2016-11-24 09:36 114人阅读 评论(0) 收藏 举报  分类: PPAPI(27)  通过将浏览器所在客户端的本地应用注册为Chrome浏览器扩展的"本地消息主机(native messaging host)",Chrome浏览器扩展还可以与客户端本地应用之间收发消息. 客户端的本地应用注册为Chrome浏览器扩展的"本地消息主机"之后,Chrome浏览器会在独立的

Senparc.Weixin.MP SDK 微信公众平台开发教程(十四):请求消息去重

原文:Senparc.Weixin.MP SDK 微信公众平台开发教程(十四):请求消息去重 为了确保信息请求消息的到达率,微信服务器在没有及时收到响应消息(ResponseMessage)的情况下,会多次发送同一条请求消息(RequestMessage),包括MsgId等在内的所有文本内容都是一致的. 这种机制确保了在诸如网络状况不佳的情况下消息的回复成功率,但是有时候由于服务器负荷.本身请求过程就需要好几秒才能完成等情况,多次重复的消息反而成了服务器的负担,甚至对业务和数据也可能造成影响.