一.flask的创建

1.虚拟环境创建

  1. 创建flask的虚拟环境
      mkvirtualenv --python=/usr/bin/python3 flask(创建名为flask的虚拟环境)
  2. 查看虚拟环境
      pip freeze
      pip list
      在这里插入图片描述
  3. 启动或退出虚拟环境
    启动:workon flask (workon+虚拟环境名)
    退出:deactivate
  4. 虚拟环境的迁移
    迁出:pip freeze > requirements.txt
    迁入:pip install -r requirements.txt

2.Flask项目创建

  1. 安装
      国外源:pip install flask
      国内源:pip install flask -i https://pypi.douban.com/simple
      在这里插入图片描述
    安装成功时,再使用pip freeze和pip list查看虚拟环境。
    在这里插入图片描述
  2. 创建项目
    在这里插入图片描述
    上传至云服务器:
    在这里插入图片描述
  3. 启动服务器,默认端口号为5000,只允许本机连接。
    在这里插入图片描述

二.启动服务器参数修改

在启动时,可以在run()方法中添加参数。
host:主机默认是127.0.0.1,指定为0.0.0.0可使所有人能访问。
port:指定服务器端口号
debug:是否开启调试模式,开启后修改过python代码自动重启。
    如果修改的是html/js/css 那么不会自动重启。
在这里插入图片描述
在这里插入图片描述
在浏览器的地址栏上输入"云服务器地址:端口号/index/",然后就会去文件中找app.route中和/index/一致的路径,然后指定该方法,并且返回值。
在这里插入图片描述
值得注意的是,需要打开对应的端口,例如我这里是打开阿里云,进入安全组中打开端口。
在这里插入图片描述

三.flask-script命令行参数

1.安装

pip install flask-script
作用:启动命令行参数

2.初始化

1.将文件.py修改为manager.py(app.py—>manager.py)
2.添加 manager = Manager(app=app)

flask-scripts是为了我们在py文件中不需要修改源码 就可以运行flask文件。
为了写命令行参数,添加 manager = Manager(app=app),则可以在运行的时候,来指定对应的服务器端口号和主机地址。

3.将文件.run()修改为manager.run()
在这里插入图片描述

3.运行

python manager.py runserver -p xxx -h xxxx -d -r
参数
- p 端口 port
- h 主机 host
- d 调试模式 debug
- r 重启(重新加载) reload(restart)
在这里插入图片描述

四.视图函数返回值

1.字符串

@app.route(‘路由路径’) 路由路径 就是浏览器访问的地址 也叫做请求资源路径
例: 127.0.0.1:5000/index 127.0.0.1:5000:主机+端口号,index:路由路径
注意视图函数的返回值,必须是字符串
在这里插入图片描述
视图函数返回值是字符串时,可以正常显示。
在这里插入图片描述
视图函数返回值不是字符串时,不能显示。
在这里插入图片描述

2.页面

如果执行完视图函数,想跳转到页面的时候,必须要将这个页面放到templates里面
如果想指定不同的文件夹的名字 需要在Flask中重写赋值template_folder=
例如:app = Flask(name,template_folder=‘templates1’)
如果想要改变html样式,可在static包中添加静态文件css,值得注意的是,需要在对应的html文件中添加<link rel="stylesheet" href="/static/名字.css">
1.在manager.py文件中
在这里插入图片描述
2.创建templates包,在其中创建名为testReturn2的html文件,添加内容。
在这里插入图片描述
3.创建static包,在其中创建名为testReturn2的css文件,添加样式
在这里插入图片描述
运行结果:
在这里插入图片描述
如果想让render_template中有文件的名字提示,则可以用如下方法。
在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐