当前位置:首页>开发>正文

python的flask框架干啥的 python库Django,Flask各有什么用途

2023-04-11 02:09:06 互联网 未知 开发

python的flask框架干啥的 python库Django,Flask各有什么用途

python库Django,Flask各有什么用途

Flask适合做app后台或基于json通信的ajax应用,是轻量级框架,我用到的一个技术方案是pypy Flask peewee uWSGI nginx ubuntu server,速度快,开发效率高,主要是通过服务器返回json数据(json可以用压缩方式)走http和各个app交互,你也可以用Flask WebSocket实现类似在线游戏的长连接,数据格式建议用json,如果有性能要求可以用Protocol Buffers协议。这样基于json api(RESTful太底层了,一般用json文本就可以了)的开发方式,一套后台程序,可以用于ajax网页,android,ios,pc,tv等多套app,最大程度满足了软件复用思想,否则一个app开发一个后台或变种后台,代价非常高,也不利于安全和性能。微服务就是这种思想扩展,但主要是针对企业应用,web2.0发展以来,一般应用用http api生成json数据交互就好,mvc模式不适合在http api上用,mvc模式是web1.0时代没有ajax,json无法分离html的妥协解决方案。http调用类似函数一样,有入口参数,返回json给调用者,当然可以在返回时加密、压缩,从而实现低耦合高内聚。另外对于http api需要防止注入攻击,加强权限控制,限制调用次数。
Django属于重量级的,很多东西是现存的,只要熟悉就可以用,但缺点是不如Flask定制灵活,适合用于普通的web应用。

python里面的网页开发用什么框架

Flask 很轻,花很少的成本就能够开发一个简单的网站。非常适合初学者学习。
Flask 框架学会以后,可以考虑学习插件的使用。例如使用 WTForm Flask-WTForm 来验证表单数据,用 SQLAlchemy Flask-SQLAlchemy 来对你的数据库进行控制。

flask框架中怎么用python连接dbmongo

import os
basedir = os.path.abspath(os.path.dirname(__file__))

SQLALCHEMY_DATABASE_URI = sqlite:/// os.path.join(basedir, app.db)
SQLALCHEMY_MIGRATE_REPO = os.path.join(basedir, db_repository)

SQLALCHEMY_DATABASE_URI是the Flask-SQLAlchemy必需的扩展。这是我们的数据库文件的路径。

SQLALCHEMY_MIGRATE_REPO 是用来存储SQLAlchemy-migrate数据库文件的文件夹。

最后,初始化应用的时候也需要初始化数据库。这里是升级后的init文件(fileapp/__init):

from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config.from_object(config)
db = SQLAlchemy(app)

from app import views, models

注意生成的脚本已改动2个地方。我们现在开始创建数据库的adb对象,引用新的模块。马上来写这个模块。

python flask 需要哪些技术

稍微总结 Django 和 Flask 的特点:

Django 提供了一系列的比较成熟的解决方案,鼓励用户使用这些现成的解决方案来快速开发系统。这些解决方案看似独立,其实在不同程度上互相配合,Django 这些 All in one 的理念,尤其擅长于开发电商系统。

Flask 是一个微框架,其提供了比较完善的 Web 服务器所需的基本功能,同时允许且建议用户自由选择扩展的技术。Flask 适合开发 API 服务(如有独立的权限系统,依赖的第三方组件)。

其二者的区别包括但不限于:

权限系统
缓存中间件
数据库ORM
模板引擎
国际化处理

python里的flask-admin 你用过吗

用过一次,照他官方文档配置的,我用MongoDB配合Mongoengine,他有Sqlalchemy示例,SQLAlchemy配置SQLite和Postgresql区别不大啊~

后来后台我是用的wtforms自己写的,没用它的了~

如何部署简单python flask应用

所需工具:
python3.flask
nginx
gunicorn
supervisor

系统环境:
Ubuntu 14.04LTS

我们先写一个最基本的flask应用:

demo.py

from flask import Flask
app = Flask(**name**)
@app.route()
def index():
return Hello World.
if __name__ == __main__:
app.run()
运行这个py文件,打开浏览器访问127.0.0.1:5000就能看到显示Hello World的页面 .
如果让这个flask引用监听来自公网ip的请求,理论上你跑此程序的机器就相当于一个服务器了,然而这个服务器并不完美,所以我们需要nginx和gunicorn来增加它的功能,让它真刀真枪上生产环境的时候能按要求运行。

flask自带的WSGI框架性能很差劲,只能适用于开发环境调试使用。我们用专业一点的gunicorn(还有很多其他优秀的框架)替代flask自带的WSGI框架。

配置完后,通过命令’/usr/local/bin/gunicorn -b127.0.0.1:5000‘启动应用。打开浏览器访问127.0.0.1:5000,同样能够得到返回页面

然而gunicorn也仅仅是一个python的WSGI框架而已,要让它真正处理来自互联网的各类访问功能还是有点欠缺,这时候就需要用到大名鼎鼎的nginx 服务器来替gunicorn遮风挡雨了。

Ubuntu下安装nginx可以用命令

sudo apt-get install nginx

安装后需要进行下配置:

cd /etc/nginx/sites-available
sudo vi test (test为配置名称,可以根据自己项目进行命名)

test文件的配置为:
server {
listen 80 # 监听80端口
location / {

proxy_pass http://127.0.0.1:5000 # 代理本机127.0.0.1:5000的服务

}
location /static {

alias /home/ubuntu/myproject/myblog/app/static # 负载均衡

}
}

cd ..

cd sites-enable

sudo ln -s ../sites-available/lwhile . (创建软链接,别漏掉最后的.)

sudo service nginx reload

sudo service nginx restart

这样nginx的基本配置文件就写好了 接下来我们配置进程管理工具supervisor supervisor可以在后面启动你的python进程,这样很方便
1.cd /etc/supervisor/conf.d

2.sudo vi test.conf (test为文件名)

[program:test]
command = /usr/local/bin/gunicorn -b127.0.0.1:5000 /home/ubuntu/myproject/test.py

3.sudo supervisorctl

4.reload

5.start test

如果一切正常,做完这所有步骤之后,现在公网的ip访问你的主机,就可以打开你的flask应用了