flask 架构,flask框架结构

  flask 架构,flask框架结构

  序言

  首先,我们使用虚拟环境隔离我的项目。例如,我们要开发一个轮询应用(一个民意调查应用程序).

  mkdir poll_app

  cd poll_app

  虚拟的.

  源框/激活常用 Python 库

  我正在开发需要数据库的应用程序。因此,我总是使用烧瓶_脚本和烧瓶_迁移库。我不喜欢瓶的硬币指示器(硬币水平指示器的缩写)命令行界面(批处理脚本的命令行界面)工具。

  烧瓶-脚本https://flask-script.readthedocs.io/en/latest/:号

  烧瓶-迁移https://flask-migrate.readthedocs.io/en/latest/:号

  和姜戈类似地,我在根文件夹中创建了一个名为manage.py的大蟒文件,例如:

  从MYAPP.data.models导入数据库

  从应用导入应用程序

  从烧瓶_脚本导入管理器

  从烧瓶_迁移导入迁移,迁移命令

  数据库初始化应用程序(应用程序)

  迁移=迁移(应用程序,数据库)

  经理=经理(应用程序)

  manager.add_command(db ,MigrateCommand)

  if __name__==__main__:

  manager.run()然后,我们可以对数据可进行如下操作:

  python manage.py db init # -初始化迁移

  python manage.py db migrate # -迁移模型

  python manage.py数据库升级# -应用更改

  python管理。py d B-help #-:)http://www . Sina.com/

  创建新项目时,我在根文件夹中创建了一个文件app.py,然后它会像这样更改。

  从应用导入应用程序

  这个地方以后会变的

  配置={

  开发 : 配置。发展

  }

  if __name__==__main__:

  app.config.from_object配置[开发])

  app。run()主要应用文件

  我还在根文件夹中创建了一个名为配置.巴拉圭的配置文件。

  类基本配置(对象):

  ""基本配置类。生产和开发服务器将使用此字段

  美国石油学会(American Petroleum Institute)调用的ORIGINS=[*] #

  SECRET_KEY=您的秘密密钥

  类开发(基本配置):

  ""开发配置。我们使用调试模式

  端口=5000

  调试=真

  测试=假

  ENV=dev

  #目前我们只有开发配置。

  #如果有生产,就需要传到这里。

  配置={

  开发 : 配置。发展

  }

  def configure_app(app):

  应用配置就在这里。

  因素

  -

  app :烧瓶

  应用程序实例

  app.config.from_object配置[开发])配置文件

  我在根目录中创建一个文件夹,并将其命名为om_core,然后在奇中创建两个新的文件夹美国石油学会(美国石油协会)和数据。

  美国石油学会(美国石油协会)文件储应用程序逻辑和路由。例如,我在美国石油学会(美国石油协会)中创建了一个名为用户的文件夹。

  在用户文件夹生成两个名为初始化.巴拉圭和控制器.巴拉圭的文件,我们其他的美国石油学会(美国石油协会)层也会这样.controllers.py(控制器文件)应该像这样:

  从瓶导入蓝图,jsonify,请求

  从MYAPP.data.models导入数据库,用户

  user=Blueprint(user ,__name__)

  @user.route(/,methods=[GET])

  极好的获取用户():

  返回JSON ify({ message : Hi user :) })

  @user.route(/int:id ,methods=[GET])

  定义用户(身份证):

  返回jsonify({ id: id })我总是会使用蓝图。

  数据文件夹存储一些模型。例如,我创建了一个名为models.py的文件:

  从烧瓶_sqlalchemy导入关系

  从应用导入应用程序

  #我们没有在这里传递应用程序实例。

  db=SQLAlchemy()

  类用户(数据库。型号):

  用户管理模型

  id=db .列(db .整数primary_key=True)

  email=db .列(db .字符串(100),唯一=真)

  密码=db .列(db .字符串(100))

  name=db .列(db .字符串(100))

  姓氏=db .列(db .字符串(100))

  active=db .列(db .布尔(),默认值=真)

  created_at=db .列(db .日期时间,默认值=db.func.now())

  updated_at=db .列(db .日期时间,默认值=db.func.now())

  def __init__(自己,电子邮件,密码,姓名,姓氏,活动,创建时间,更新时间):

  self.email=电子邮件

  自我密码=密码

  self.name=name

  self.surname=姓氏

  self.active=active

  self.created_at=created_at

  self.updated_at=updated_at让我们回到om_core文件夹。我创建了一个名为初始化。巴拉圭的文件以将美国石油学会(美国石油协会)层用作端点。

  从烧瓶进口烧瓶

  从克-奥二氏分级量表进口

  从配置导入基本配置

  从配置导入配置应用程序

  app=Flask(__name__)

  从MYAPP.api .用户.控制器导入用户

   Corst设置将在这里。我们以后可能会使用这个端点。

  cors=CORS(应用程序,资源={

  r/api/*: {

  起源的:基本配置。起源

  }

  })

  配置应用程序

  app。URL _ map。strict _ slashes=False

  app.register_blueprint(user,url_prefix=/api/users )在上述代码中,我已经使用了弗拉斯克CORS来允许来自不同来源的请求。如果您不想允许来自不同来源的请求,则不需要使用。

  整体项目结构的屏幕截图

  截图如下:

  推荐教程: 《Python教程》 以上就是了解瓶项目结构的详细内容,更多请关注盛行信息技术软件开发工作室其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: