• Stars
    star
    823
  • Rank 54,979 (Top 2 %)
  • Language Vue
  • License
    MIT License
  • Created almost 6 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

基于 Flask 和 Vue.js 前后端分离的微型博客项目,支持多用户、Markdown文章(喜欢/收藏文章)、粉丝关注、用户评论(点赞)、动态通知、站内私信、黑名单、邮件支持、管理后台、权限管理、RQ任务队列、Elasticsearch全文搜索、Linux VPS部署、Docker容器部署等

Flask Vue.js全栈开发

Python Vue.js vue-router axios Bootstrap4 webpack

测试地址: http://120.77.33.143

RESTful API: http://120.77.33.143:5000/api/posts (用 Firefox 查看返回的 JSON 数据更佳),或者将仓库内的 flask-vuejs-madblog.postman_collection.json 导入你的 Postman 工具

本系列的最新代码及使用方式将持续更新到: https://madmalls.com/blog/post/latest-code/

pic 01 pic 02 pic 03

1. Flask Vue.js全栈开发教程系列

2. 如何使用

Github 仓库中只包含前半部分代码,获取最新完整代码请前往: Flask Vue.js全栈开发

2.1 git clone

Github 仓库中只包含前半部分代码,想获取最新完整代码请前往: https://madmalls.com/blog/post/latest-code/

$ git clone https://github.com/wangy8961/flask-vuejs-madblog.git

2.2 Backend

(1)提供 .env 文件

复制 backend/.env.example,并重命名为 backend/.env,然后修改里面的邮箱配置,具体参考: https://madmalls.com/blog/post/email-support/#12-qq

(2)修改 config.py 文件

修改 back-end/config.py 中的配置,比如 SECRET_KEYSQLALCHEMY_DATABASE_URI

ADMINS 这个配置一定要修改!

ADMINS = ['[email protected]']  # 管理员的邮箱地址

因为在这个列表中的邮箱地址,在注册时,会自动赋予管理员的角色

(3)启动后端 Flask 应用

Open a new terminal:

$ cd back-end
$ python -m venv venv
$ source venv/bin/activate  # 如果是Windows环境,则执行 venv\Scripts\activate
(venv)$ pip install -r requirements.txt

# Flask-Migrate create database
(venv)$ flask db upgrade

# Pre deploy, eg. insert roles
(venv)$ flask deploy

# create back-end/.env file, like this
FLASK_APP=madblog.py
FLASK_DEBUG=1

(venv)$ flask run

浏览器访问: http://localhost:5000/api/ping,比如返回 "Pong!" 则说明正常

2.3 Frontend

(1)安装 Node.js

请前往 官方网站 下载并安装 LTS 版本

安装好后,由于 npm 命令使用的国外镜像,在国内下载依赖包时很慢,这里换成 淘宝 NPM 镜像

打开 cmd

$ npm install -g cnpm --registry=https://registry.npm.taobao.org

之后,用 cnpm 来代替 npm 命令

(2)运行前端应用

Open a new terminal:

$ cd front-end
$ cnpm install
$ npm run dev

浏览器访问: http://localhost:8080

2.4 注册管理员账号

浏览器访问: http://localhost:8080/#/register 注册你的管理员账号 (注册时填写的 Email 在配置文件 config.pyADMINS 中即可!)

然后登录你的这个邮箱,去激活账号。Have fun

More Repositories

1

python3-concurrency-pics-02

爬取 www.mzitu.com 全站图片,截至目前共5162个图集,16.5万多张美女图片,使用 asyncio 和 aiohttp 实现的异步版本只需要不到2小时就能爬取完成。按日期创建图集目录,保存更合理。控制台只显示下载的进度条,详细信息保存在日志文件中。支持异常处理,不会终止爬虫程序。失败的请求,下次再执行爬虫程序时会自动下载
Python
325
star
2

python3-algorithms

Python3 数据结构与算法的介绍及应用。1. 数据结构:数组、链表、栈、队列、树、堆、图; 2. 典型排序算法:冒泡排序、选择排序、插入排序、希尔排序、堆排序、归并排序、快速排序、桶排序、计数排序、基数排序; 3. 查找算法: 顺序查找、二分查找、哈希表查找、二叉查找树、平衡二叉查找树(AVL树、红黑树)、平衡多路查找树(B树、B+树);4. LeetCode 和《剑指Offer》刷题、多种方法的题解
Python
84
star
3

python3-concurrency

Python3爬虫系列的理论验证,首先研究I/O模型,分别用Python实现了blocking I/O、nonblocking I/O、I/O multiplexing各模型下的TCP服务端和客户端。然后,研究同步I/O操作(依序下载、多进程并发、多线程并发)和异步I/O(asyncio)之间的效率差别
Python
55
star
4

grpc-go-tutorial

详解 gRPC 框架的 4 种 API: Unary RPC、Server-side Streaming RPC、Client-side Streaming RPC、Bi-directional Streaming RPC,并演示了 gRPC 的高级特性,比如 Error Handling、Deadlines & Timeouts、Cancelling RPCs、Authentication(SSL/TLS)、Interceptor、Language Interoperability、Reflection & Evans CLI 等。最后,用一个实例 ToDo list 将我们所学的 gRPC 全部知识融会贯通
Go
28
star
5

python3-pyqt5-process-csv-data

使用Python3 csv模块处理快收后台导出的商场优惠活动交易数据,统计各类优惠券的核销数量,以及实收款等汇总数据。测试数据 "1. 财务明细数据.csv" 已经删除了敏感信息,由于客户不想使用脚本,所以使用 PyQt5 编写了图形界面,再使用 pyinstaller 打包为可执行程序
Python
23
star
6

certbot-dns-aliyun

用 Let's Encrypt 官方工具 Certbot 申请通配符证书(Wildcard Certificate)时,只能用 DNS-01 的方式来验证域名所有权,需要在域名下添加一条 DNS TXT 记录。如果要用 certbot renew 命令自动续期的话,就需要自动添加或删除 DNS TXT 记录。官方提供的都是国外的 DNS 服务商的插件,而国内的 Aliyun DNS 也提供了 DNS 云解析管理 API,此工具是用 Go 语言调用 API 实现自动添加和删除 DNS TXT 记录,从而实现自动用 certbot renew 命令续期通配符证书的目的!
Go
21
star
7

download-large-files

介绍如何流式下载大文件,并实现断点续传功能。根据顺序下载大文件的字节和乱序下载大文件的各个分段,分别进行了多线程或协程并发,还实现了多个大文件并发下载
Python
17
star
8

python3-concurrency-aqi

并发爬取全国城市空气质量日报数据,数据来源: http://datacenter.mep.gov.cn
Python
10
star
9

python3-concurrency-pics-01

爬虫多线程或异步下载 http://gank.io/api/data/%E7%A6%8F%E5%88%A9/1000/1 所分享的美女图片
Python
10
star
10

go-rpc-tutorial

Go语言实现 HTTP-RPC / TCP-RPC / JSON-RPC 各自的服务端和客户端
Go
2
star
11

shell-scripts

开发过的shell脚本
Shell
2
star
12

go-docker-dev

使用 Docker 容器进行 Golang 开发环境初始化,支持代码热更新后,自动编译、运行
Dockerfile
2
star
13

python3-retry

Python
2
star
14

python3-concurrency-toutiao

并发爬取今日头条街拍图
Python
2
star
15

flask-mongoengine-tutorial

How to use MongoEngine for your web app
Python
2
star
16

ansible-role-nginx

示例演示通过 Ansible Role 安装 Nginx
HTML
2
star
17

go-rgb-to-hex

将 https://a.xiumi.us/board/v5/251mJ/23297905 和 https://b.xiumi.us/board/v5/251mJ/23381856 中的 RGB 颜色字符串转换成十六进制格式的,因为像 https://www.processon.com/ 这类网站选择颜色都是十六进制格式的
Go
2
star
18

apscheduler-demo

Python
1
star
19

vimrc

My standard Vim config file
Vim Script
1
star
20

grpc-python-tutorial

Python
1
star