写个网站吧! --Flask+Vue.js+MySQL+Docker(3)--后端

news/2024/5/9 19:33:06/文章来源:https://eswang.blog.csdn.net/article/details/100109838

前情回顾:写个网站吧! --Flask+Vue.js+MySQL+Docker(1)--简介

总结:后端好像也没啥要讲的

先说说使用的技术栈:

Flask,FLask-Restful,Flask-SQLalchemy, Flask-Cors, Python-dotenv, Pymysql

目录

BUG

架构

App.py


BUG

1. 第一个就是虚拟环境的问题。

因为我是使用的Pycharm, 虚拟环境之类的配置非常简单, 但是封装docker的时候我想,都是用docker了还有必要使用虚拟环境么,Pipenv自身也是有缺陷的,反而是使用pip+requirements的方法更直接点:

pip freeze >requirements.txt
pip install -r requirements.txt

有同学有质疑的话也可以交流讨论噢。

2. 接下来是服务器的问题,我们使用指令flask run运行时,因为使用了python-dotenv扩展,我们可以直接读取.env或者.flaskenv中的配置,但是生产环境中我这次使用的是gunicorn,所以在运行时无法读取.env中的配置,最后直接写在了文件中,由于我对docker的了解还不是很深,所以我不知道docker的安全性对这个包容性怎么样。

以后会寻求更好解决的方法。

3. 最后是werkzeug的0.15.5版本中出现的一个BUG,问题如下:

c:\repos\flask-examples\.venv\scripts\python.exe: Error while finding module specification 

解决方法也很简单,降低一下版本就好。 

werkzeug = "==0.15.4"

未来werkzeug会修复这个问题,所以这个BUG是暂时的,不用太多在意。

4. 关于pymysql,之前一个项目使用会报错,需要下载一个C的包,这次因为我部署在一个简单的docker容器,所以这个包不能在基于alpine的容器里运行。所以这次我把这个包直接删掉了,结果是并没有发生什么错误。

可能是BUG修复了?

总之还是使用:

SQLALCHEMY_DATABASE_URI = 'mysql+mysqlclient://。。。'

架构

直接上图:

由于是非常简单的CRUD业务,所以也没有过多使用一些架构,虽然flask推荐使用包(init)我也只是简单建了个文件夹就开始使用。

主要有一个简单的模型,其他的文件都放在了app.py中。

这样做的好处就是对于小项目写起来简单,嗯,就这一个好处。

所以大家还是不要学我了。。。

App.py

因为使用了扩展来解决跨域问题,所以要记得用CORS(app)。

app = Flask(__name__)
api = Api(app)
CORS(app, supports_credentials=True)

关于表单验证,这里也放一个简单的实例:

resource_fields = {'id': fields.Integer,'date': fields.String,'name': fields.String,'project': fields.String}@marshal_with(resource_fields)def get(self):project_data = Projects.query.all()return project_data

后端因为这次设计的非常简单,确实也没有使用到太多的东西,包括认证和一些flask-restful的高级功能也没有做(因为实在是懒)。

未来的事,更多的还是在Flask制作API上多学习一下,有条件开始学习一下grapgql。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_794365.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

写个网站吧! --Flask+Vue.js+MySQL+Docker(4)--数据库

前情回顾: 写个网站吧! --FlaskVue.jsMySQLDocker(1)--简介 说第三篇写的少,那你还没看第四篇,没错这一篇更少,少到我都想贴几个之前写的mysql的链接来水过去。 老规矩说一下技术栈&#xff…

写个网站吧! --Flask+Vue.js+MySQL+Docker(5)--docker部署

前情回顾:写个网站吧! --FlaskVue.jsMySQLDocker(1)--简介 到了最烦人最烦人的部署阶段,先简单画一个我的思路的图: 思路就是两个docker容器,一个布置前端,一个布置后端&#xff0c…

常用论文检索网站

1、https://dx.doi.org/ DOI本身有很强大的检索网站,拥有非常完善的文献储存与检索系统,进入网站之后,在输入框中粘贴进DOI号,然后点击GO就会回到刚刚那篇论文的所在的网页。也就是说,在只知道DOI的情况下,…

个人博客网站的第一次修改

前言 今天讲博客网站的部分功能修改了一下,在这里记录下来,说不定以后看起来还有点意义。 数据 首先是数据层的修复。 根据分类获取到的文章列表并没有按照事件降序排列的BUG,这个之前没有注意,使用过程中才发现。 关于浏览量…

大型网站图片服务器架构的演进

在主流的Web站点中,图片往往是不可或缺的页面元素,尤其在大型网站中,几乎都将面临“海量图片资源”的存储、访问等相关技术问题。在针对图片服务器的架构扩展中,也会历经很多曲折甚至是血泪教训(尤其是早期规划不足&am…

网站Http升级至Https(基于Tomcat)

由于之前一直忙于服创比赛,然后就导致好久没写博客了。 现在服创结束也有十来天了,感觉不写点什么就对不起自己了。 于是乎,就写写将网站从http升级到https的过程吧。首先域名和服务器自然是必须的,大致流程分为以下几部&#xff…

35个立体动感的视差滚动效果网站作品

这篇文章收集了35个具有立体动感效果的视差滚动网页设计作品分享给大家。视差滚动(Parallax Scrolling)是指让多层背景以不同的速度移动,形成立体的运动效果,带来非常出色的视觉体验。作为今年网页设计的热点趋势,越来…

30个优秀的网站导航设计案例分享

导航是网站最重要的组成部分之一,设计优秀的导航能够引导用户浏览网站中的更多内容。为了能让导航和网页内容完美的融合在一起,设计前需要设仔细分析网页结构。这篇文章收集了30个优秀的网站导航设计案例,希望这些实例能给你带来灵感。 Fully…

分享30个优秀的网站导航设计案例

导航是网站最重要的组成部分之一,设计优秀的导航能够引导用户浏览网站中的更多内容。为了能让导航和网页内容完美的融合在一起,设计前需要设仔细分析网页结构。这篇文章收集了30个优秀的网站导航设计案例,希望这些实例能给你带来灵感。 Fully…

网站出现 502 Bad Gateway 怎么解决?

为什么80%的码农都做不了架构师?>>> 打开某网站出现一个问题如下图(这里就不说是哪个网站了),那么下面就针对这个问题分享下解决思路。 1、什么是 502 badgateway 报错 ? 简单来说 502 是报错类型代码&…

《CSS网站布局实录》读书笔记

从Web标准、HTML标记、CSS语法基础介绍到实用技巧,事无巨细。实体书已不印刷,只能下载电子版 书的背景: 国内第一本web标准的CSS布局书,2006年9月第一版,作者李超。 环境背景: 当时主流浏览器IE6与Firefox&…

谁在使用我的网站——用户行为分析

谁在使用我的网站——用户行为分析 前面根据用户的特征对用户做了分类,设定了一些常用的用户指标和值得关注的用户指标,基于这些分类用户指标的分析可以发现用户运营和推广中的诸多问题,其中活跃用户和流失用户的定义中已经用到了与用户行为相…

如何选择合适的网站程序

如何选择合适的网站程序 对于大多数的新手站长,如果要自己建一个网站,一般都是从网上下载一些现成的网站程序代码。可是,这些新手对于选择哪种CMS程序往往比较困惑,不知道哪个好用一些。现在,我们就来说说如何选取合适…

后端小白的我,是如何成功搭建 express+mongodb 的简洁博客网站后端的

前言 blog-node 是采用了主流的前后端分离思想的,主里只讲 后端。 blog-node 项目是 node express mongodb 的进行开发的,项目已经开源,项目地址在 github 上。 效果请看 http://biaochenxuying.cn/main.html 1. 后端 1.1 已经实现功能 [x]…

Flickr 网站架构分析

Flickr.com 是网上最受欢迎的照片共享网站之一,还记得那位给Windows Vista拍摄壁纸的Hamad Darwish吗?他就是将照片上传到Flickr,后而被微软看中成为Vista壁纸御用摄影师。 Flickr.com 是最初由位于温哥华的Ludicorp公司开发设计并于2004年2月…

一个可以实时查相关电子产品价格的网站_我是亲民_新浪博客

香港价格网,里面的价格和香港的百老汇、丰泽等的价格几乎同步,相差不大,有很大的参考价值,对于准备去香港买电子产品的网友来说,是个非常好的网站,特别分享: http://www.price.com.hk/

一个可以实时查相关电子产品价格的网站

香港价格网,里面的价格和香港的百老汇、丰泽等的价格几乎同步,相差不大,有很大的参考价值,对于准备去香港买电子产品的网友来说,是个非常好的网站,特别分享: http://www.price.com.hk/

微软所有正版软件下载网站ITELLYOU_我是亲民_新浪博客

上周上课,从一个学生得知这样一个神奇的网站,汇集了微软出品的几乎所有软件,提供下载。 这是网站的主页,简简单单,就是一个分类。 里面的操作系统栏目,涵盖了DOS6到最新的Windows8.1 with update&#xff1…

微软所有正版软件下载网站ITELLYOU

上周上课,从一个学生得知这样一个神奇的网站,汇集了微软出品的几乎所有软件,提供下载。 这是网站的主页,简简单单,就是一个分类。 里面的操作系统栏目,涵盖了DOS6到最新的Windows8.1 with update&#xff1…

镜像下载网站

1、ISO镜像下载网站:网易镜像:   http://mirrors.163.com/阿里镜像:   https://opsx.alibaba.com/mirror # 亲测可用。点进去,选择ISO文件,点击即开始下载 centos中文站: https://www…