Python全栈工程师之从网页搭建入门到Flask全栈项目实战(7) - 在线问答系统
1.项目源码/业务逻辑
百度网盘链接:链接:https://pan.baidu.com/s/13VNfrSJE6vcL3HP1J5T8ew 提取码:00s0,项目业务逻辑自行阅读
2.项目搭建
点击新建New Project,选择Flask项目

选择项目路径和使用Virtualenv新建项目虚拟环境
- Locatiaon:项目路径
- New environment using Virtualenv_Loacation:项目的虚拟环境

配置Flask启动等相关配置

配置方式一:
- Target:主文件/启动文件名
- Additional options:设置端口号
- FLASK_ENV:development开发模式
- FLASK_DEBUG:启动勾选上

配置方式二:之前笔记有,详见https://www.cnblogs.com/gltou/p/16803722.html


配置项目镜像源:点击pycharm底部的【Python Packages】,切换镜像源,这样项目在pycharm中下载一些类库会很快。常见镜像源如下
- 清华: https://pypi.tuna.tsinghua.edu.cn/simple
- 阿里云: http://mirrors.aliyun.com/pypi/simple/
- 中国科技大学: https://pypi.mirrors.ustc.edu.cn/simple/
- 华中理工大学: http://pypi.hustunique.com/
- 山东理工大学: http://pypi.sdutlinux.org/
- 豆瓣: http://pypi.douban.com/simple/

安装当前项目需要的类库:
- flask-wtf
- flask-sqlalchemy
- mysqlclient

会出现多个同样的,pycharm将你配置的镜像源中的也展示出来了,根据灰色的地址信息,优先安装配置的镜像源,速度快。点击Install Package安装

部门类库安装不上时:
- 方法一:升级项目的pip包 python -m pip install -U pip ,升级成功后,再回到步骤重新安装(我使用过程中此方法不行)
- 方法二:官网把包下载下来,进行安装。【地址一、地址二】,点击链接自动跳转,地址一可以查看相关安装说明


ORM相关类库安装图示版本,稳定。

3.项目环境技术栈
pip镜像源:
- 清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/
- pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple/
Flask
- flask微框架
- Jinja2模板引擎
依赖安装
- mysqlclient
- flask-wtf
- flask-sqlalchemy
- flask-login
- flask-ckeditor
4.项目代码/知识点补充讲解
4.1.相关快捷键
- 代码样式格式化快捷键:Ctrl+Alt+L
- 其他的自行百度
4.2.PDMan数据库建模
数据库模型编写的辅助工具,使用教程:https://blog.csdn.net/yjrguxing/article/details/112256692
4.3.蓝图
项目代码新的知识点,点击链接自行学习,此处不赘述:https://www.bbsmax.com/A/xl56Pmrkzr/,https://www.cnblogs.com/Blogwj123/p/16475980.html
4.4.函数注册自定义 过滤器
学习文档:https://developer.aliyun.com/article/1081645
4.5.Flask-login模块
使用详见:https://www.cnblogs.com/minsons/p/8045916.html
4.6.Flask常用扩展
- Flask-SQLalchemy:操作数据库;
- Flask-script:插入脚本;
- Flask-migrate:管理迁移数据库;
- Flask-Session:Session存储方式指定;
- Flask-WTF:表单;
- Flask-Mail:邮件;
- Flask-Bable:提供国际化和本地化支持,翻译;
- Flask-Login:认证用户状态;
- Flask-OpenID:认证;
- Flask-RESTful:开发REST API的工具;
- Flask-Bootstrap:集成前端Twitter Bootstrap框架;
- Flask-Moment:本地化日期和时间;
- Flask-Admin:简单而可扩展的管理接口的框架
- timeago:计算两个不同时间的时间差, https://blog.csdn.net/jy692405180/article/details/52254047,https://www.cnpython.com/qa/1331834
4.7.app.py文件
app = Flask(__name__,static_folder='assets') :flask项目创建好后,下图的【static、templates、app.py】是默认的目录结构。static_folder属性:用来指存放静态文件的目录,默认情况下访问的是static目录中的文件,但是项目代码中静态文件是放到assets目录中,因此要设置static_folder


Python全栈工程师之从网页搭建入门到Flask全栈项目实战(7) - 在线问答系统的更多相关文章
- Python全栈工程师之从网页搭建入门到Flask全栈项目实战(1) - ES6标准入门和Flex布局
1.简述 1.什么是ES6?ES6, 全称 ECMAScript 6.0,是 JavaScript 的下一个版本标准,2015年6月份发版.ES6的主要目的是为了解决 ES5 的先天不足. 2.了解E ...
- Python全栈工程师之从网页搭建入门到Flask全栈项目实战(3) - 入门Flask微框架
1.安装Flask 方式一:使用pip命令安装 pip install flask 方式二:源码安装 python setup.py install 验证 第一个Flask程序 程序解释 参数__na ...
- Web全栈工程师修养
全栈工程师现在是个很热的话题,如何定义全栈工程师?在著名的问答网站Quora上有人提出了这个问题,其中一个获得了高票的回答是: 全栈工程师是指,一个能处理数据库.服务器.系统工程和客户端的所有工作的工 ...
- 阿里巴巴年薪800k大数据全栈工程师成长记
大数据全栈工程师一词,最早出现于Facebook工程师Calos Bueno的一篇文章 - Full Stack (需fanqiang).他把全栈工程师定义为对性能影响有着深入理解的技术通才.自那以后 ...
- Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- EFCodeFirst快速搭建入门
EFCodeFirst快速搭建入门 1.新建Model类库项目. 添加EntityFramework.dll的引用. 编写实体类Course,Student. namespace EFCodeFirs ...
- 测开之Python自动化全栈工程师+性能专项(送思维导图)
测开之Python自动化全栈工程师+性能专项 功能测试基础 接口测试基础接口的通信原理与本质cookie.session.token详解接口测试的意义与测试方法接口测试用例的设计 app测试 app流 ...
- Python全栈工程师(装饰器、模块)
ParisGabriel 每天坚持手写 一天一篇 决定坚持几年 全栈工程师 Python人工智能从入门到精通 装饰器 decorators(专业提高篇) 装饰 ...
- Python全栈工程师(递归函数、闭包)
ParisGabriel 每天坚持手写 一天一篇 决定坚持几年 全栈工程师 Python人工智能从入门到精通 函数式编程: 是指用一系列函数解决问题 每一个函数完成细 ...
- 【目录】python全栈工程师
第一阶段:Python 语言核心编程1. Python核心 -- 2048 游戏核心算法2. 面向对象 -- 天龙八部游戏技能系统3. Python高级 -- 集成操作框架项目:2048游 ...
随机推荐
- 打造企业自己代码规范IDEA插件(中)
一些基本概念 在开始独立研发公司自己的代码规范检查规则之前,先介绍一些相关的基本概念.阿里巴巴代码规范很多规则其实都是基于开源框架PMD进行的研发.PMD用官方的话语介绍来说:PMD是一个源代码分析器 ...
- P4047 [JSOI2010]部落划分 方法记录
原题链接 [JSOI2010]部落划分 题目描述 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人们总是拉帮结派形成属于自己的部落,不同的部落之间则经常 ...
- pgsql 的问题
pgsql 怎么插入inet类型的数据?insert into table (remote_addr) values ( ?::INET); pgsql如何截取时间的精度 select create ...
- Filter 筛选器(一)之 ActionFilter-- IAsyncActionFilter 和 ActionFilterAttribute
微软官网例子:Filter筛选器 使用场景(执行顺序): IAsyncActionFilter 使用异步actionFilter 只需要实现 他的 :OnActionExecutionAsync 方法 ...
- 齐博X1-栏目的调用3
本节继续说明栏目的调用之同级别栏目 同级栏目的调用 fun('sort@brother',$fid,'cms') 这个函数用的比较多,特别是栏目页,在一个页面会把一个父级栏目下的子级栏目全部列出来, ...
- VSCode设置鼠标滚轮滑动设置字体大小
1. 打开"文件->首选项->设置 2. 打开settings.json文件 3. 在setting.json 中添加"editor.mouseWheelZoom&qu ...
- 4.websocket基本概念
websockey的模式就是在于当前端向后端发送请求创建一个websocket链连接之后,连接默认不断开,前端和服务端就维护了一个连接,前端可以通过连接给服务端发消息,服务端也可以通过连接给前端发消息 ...
- 一篇文章带你了解NoSql数据库——Redis简单入门
一篇文章带你了解NoSql数据库--Redis简单入门 Redis是一个基于内存的key-value结构数据库 我们会利用其内存存储速度快,读写性能高的特点去完成企业中的一些热门数据的储存信息 在本篇 ...
- AIR32F103(四) 27倍频216MHz,CoreMark跑分测试
目录 AIR32F103(一) 合宙AIR32F103CBT6开发板上手报告 AIR32F103(二) Linux环境和LibOpenCM3项目模板 AIR32F103(三) Linux环境基于标准外 ...
- perl按照健值排序
perl中如何将按hash key值排序 BRUSH2 10752 11263 BUFFER 11264 11775 MEGASONIC 11776 12287 INPUTMODULE 12800 1 ...