用 Flask 来写个轻博客 (1) — 创建项目

目录

  • 目录
  • 前言
  • 扩展阅读
  • 部署开发环境
  • 创建 Github 项目

前言

一步一步的实现一个 Flask 轻博客项目启动,最新的代码会上传到 Github。

扩展阅读

欢迎使用 Flask — virtualenv

部署开发环境

  • 连接 GitHub
hostnamectl set-hostname flask-dev  # 设置 hostname
ssh-keygen                          # 生成 SSH 公钥
cd .ssh/
vim id_rsa.pub

生成公钥后将其上传到在 Github
这里写图片描述

  • 配置 Git
git config --global user.email "jmilkfan@example.com"
git config --global user.name "jmilkfan"vim ~/.gitconfig[core]repositoryformatversion = 0filemode = truebare = falselogallrefupdates = trueeditor = vim
  • 安装 pip
yum install pip
  • 安装 virtualenv
    你很可能想在开发中用上 virtualenv,如果你有生产环境的 shell 权限,你同样会乐于在生产环境中使用它。

virtualenv 解决了什么问题?如果你像我一样喜欢 Python,不仅会在采用 Flask 的Web 应用中用上 virtualenv,在别的项目中你也会想用上它。你拥有的项目越多,同时使用不同版本的 Python 工作的可能性也就越大,或者起码需要不同版本的 Python 库。悲惨现实是:常常会有库破坏向后兼容性,然而正经应用不采用外部库的可能微乎其微。当在你的项目中,出现两个或更多依赖性冲突时,你会怎么做?

virtualenv 拯救世界!virtualenv 为每个不同项目提供一份 Python 安装。它并没有真正安装多个 Python 副本,但是它确实提供了一种巧妙的方式来让各项目环境保持独立。让我们来看看 virtualenv 是怎么工作的。

pip install virtualenv# 创建一个 virtualenv 并命名为 env,这样当前环境中的所有配置都会保存在 env 目录下,而且所有的包列表也会安装在 env 目录下
[root@flask-dev JmilkFan-s-Blog]# virtualenv env# 运行 env/bin/activat bash 脚本来激活 env 沙盒环境
[root@flask-dev JmilkFan-s-Blog]# source env/bin/activate
  • 安装 Flask
(env) [root@flask-dev JmilkFan-s-Blog]# pip install flask# 生成 pip 包列表, 生成当前环境下所需要安装的 python 软件包列表
[root@flask-dev JmilkFan-s-Blog]# pip freeze > requirements.txt
# 生成 requirements.txt 文件是为了让我们在部署这个应用的时候,可以更加方便的去安装所需要的软件包
#pip install -r requirements.txt# 退出沙盒环境
(env) [root@flask-dev JmilkFan-s-Blog]# deactivate

创建 Github 项目

# 让 Git 忽略对整个 env 目录和所有 *.pyc 文件的处理,让 Git 仅处理自己的代码文件
vim .gitignore    env/*.pycmkdir JmilkFan-s-Blog
cd JmilkFan-s-Blog# 创建 README 文件
echo "# JmilkFan's Blog with Python-Flask" >> README.md# 初始化 git 仓库
git init# 将刚创建的文件都加入 git 缓冲区
git add .# 提交改动文件到 git 仓库
git commit -m "first commit"# 将项目发布到 github
git remote add origin https://github.com/JmilkFan/JmilkFan-s-Blog.git
git push -u origin master

这样我们就创建好了一个 Flask 的 Github 项目了。

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

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

相关文章

python静态方法,类方法,属性方法,实例方法

DAY 3. 静态方法,类方法,属性方法,实例方法 有四种方法,实例方法,类方法,静态方法,属性方法 实例方法 实例方法的第一个参数是self,他会指向类的实例化对象,只能被对象…

ubuntu 软件包降级

ubuntu 软件包降级 sudo aptitude install libssl-dev 1. 是否接受该解决方案? [Y/n/?] n 2. 是否接受该解决方案? [Y/n/?] y 3. 您要继续吗? [Y/n/?] ysudo aptitude install libcairo21.4.10-1ubuntu4 # 强制降级 sudo aptitude forbid…

java后期发展方向_Java程序员的4个职业发展方向,该如何把握黄金5年?

在Java程序界流行着一种默认的说法叫“黄金5年”,意思是说,一个Java程序员从入职的时候算起,前五年我选择直接影响着整个职业生涯的发展方向和薪资走向。而这5年,也决定了一个程序员能否成为职业大牛的可能。那么,在这…

python 类变量(属性)和实例变量(属性

DAY 4. 类变量(属性)和实例变量(属性) 类变量:在所有类的实例之间都可以共享的变量,类变量在所有对象间只保留一份 在类体中定义类的所有实例对象都可以访问类变量类变量只能由类修改,实例对象…

MySQL 关联表批量修改(数据同步)

update table1 t1 ,table2 t2 set t1.field1 t2.field2 where t1.id t2.id 转载于:https://www.cnblogs.com/52php/p/5677908.html

sourcetree不好做到的一些git操作

2019独角兽企业重金招聘Python工程师标准>>> 日常中我们有很多操作通过sourcetree就可以实现界面化操作,但是有一些场景不好去实现,这里总结下: 场景1:我们有个A分支,需要跟master分支合并等待上线&#xf…

vue大括号里接受一个函数_vue源码探究(第四弹)

vue源码探究(第四弹)结束了上一part的数据代理,这一部分主要讲讲vue的模板解析,感觉这个有点难理解,而且内容有点多,hhh。模板解析废话不多说,先从简单的入手。按照之前的套路,先举一…

类级别的分装 ---四种访问级别

privateprivate成员为类的私有性质,仅有类本身和友元可以访问;protected和private类似,区别于protected可以被该类所有派生类访问;publicpublic的成员可以被外界的所有客户代码直接访问published和public的区别仅在于published的成…

python自省与反射

DAY 5. python自省 这是很久之前写的,当时对自省和反射的概念没理解,学习Java以后多了一点理解,自省是获取对象的能力,反射是操纵对象的能力,python中使用getattr()和setattr()实现反射,而其他的则是自省&…

vb.net 窗体接收键盘事件_(十五)C#WinFrom自定义控件系列-键盘(二)

前提入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章。本系列文章将讲解各种控件的开发及思路,欢迎各位批评指正。此系列控件开发教程将全部在原生控件基础上进行重绘开发,目标的扁平化、漂亮、支持触屏。如…

centos下cmake安装

步骤一、安装gcc等必备程序包(已安装则略过此步,用gcc -v检测) yum install -y gcc gcc-c make automake 步骤二、安装wget (已安装则略过此步) yum install -y wget 步骤三、获取CMake源码包 wget http://www.cmake.…

python 生成式,迭代器,生成器

DAY 6. 生成式,迭代器,生成器 6.1 生成式 6.1.1 列表生成式 list [index for index in range(10)]6.1.2 字典生成式 dict {zhangsan: 10,lisi: 12,wangwu: 18 } # 实现键值互换 dict {k:v for v,k in dict.items() if k > 12}6.1.3 集合生成式 # 100以内…

shell MAC 地址 校验

/**************************************************************************************** shell MAC 地址 校验* 说明:* 要对MAC地址进行校验,记录一下正则表达式写法,有些方法在PC上验证是可行的&…

移动端Web开发如何处理横竖屏

<!Doctype html> <html> <head> <meta charset"utf-8"> <meta id"viewport" name"viewport" content"widthdevice-width,initial-scale1.0;"> <title>横竖屏切换检测</title> <style ty…

恩智浦智能车大赛2020_内蒙古科技大学第九届智能车大赛校内公开赛总决赛

为了激发学生的创新意识&#xff0c;提高学生的动手能力&#xff0c;培养团队合作意识&#xff0c;秉承“实践源于真知&#xff0c;创新放飞梦想”的思想。2020年12月6日&#xff0c;内蒙古科技大学第九届智能车大赛总决赛如约而至。本次大赛有来自各院系的223支队伍报名参加了…

python格式化字符串的三种方法(%,format,f-string)

DAY 7. 格式化字符串 到目前为止&#xff0c;我所知道的&#xff0c;python格式化字符串有三种方法&#xff0c;第一是早期就有的%&#xff0c;其次是2.5之后的format(),还有就是3.6添加的f字符串调试 7.1 %格式化字符串 %格式化字符串是python最早的&#xff0c;也是能兼容…

Android App 优化之 ANR 详解

为了便于阅读, 应邀将Android App性能优化系列, 转移到掘金原创上来.掘金的新出的"收藏集"功能可以用来做系列文集了. 今天先来聊聊ANR. 1, 你碰到ANR了吗 在App使用过程中, 你可能遇到过这样的情况: 恭喜你, 这就是传说中的ANR. 1.1 何为ANR ANR全名Application Not…

微信高级群发接口正文乱码解决方案

content里面的内空如果含有html标签的话&#xff0c;需要对内容进行一下转义。如果里面含有style".."类似于这样的带""号的内容的话&#xff0c;就更需要注意了。 foreach ($news as &$item) {foreach ($item as $key > $val){if ($key content){$…

python *args和**kwargs以及序列解包

DAY 8. *args和**kwargs *args&#xff1a;多值元组&#xff0c;**kwargs多值字典&#xff0c;他们是python函数传参时两个特殊的参数&#xff0c;args和kwargs并不是强制的&#xff0c;但习惯使用这两个&#xff0c;如果在函数参数列表中声明了*args&#xff0c;则允许传递任…

解读直播连麦与点播加密

近年来&#xff0c;直播热潮持续升温。有需求就会有变革&#xff0c;直播的相关技术也在不断更新&#xff0c;为直播行业带来更好地服务。如&#xff1a;直播连麦与点播加密技术等。 直播连麦&#xff0c;即主播与连麦者通过互动直播中心进行实时互动&#xff0c;信息在云端混流…