python Flask-restful 无法获取资源类中的应用程序访问权限

2024-02-10

这是来自的示例代码Flask-restful 文档 http://flask-restful.readthedocs.org/en/latest/quickstart.html#a-minimal-api

from flask import Flask
from flask.ext import restful

app = Flask(__name__)
api = restful.Api(app)

class HelloWorld(restful.Resource):
    def get(self):
        return {'hello': 'world'}

api.add_resource(HelloWorld, '/')

if __name__ == '__main__':
    app.run(debug=True)

The HelloWorld类位于同一个 python 文件中,例如app.py, 有用。

现在我要把HelloWorld类到一个单独的类文件,如下布局:

app
app/__init__.py # hold above code except the HelloWorld class.
app/resource
app/resource/__init__.py # empty
app/resource/HelloWorld.py # hold the above HelloWorld class.

The app/__init__.py包含:

from flask import Flask
from flask.ext import restful
from resource.HelloWorld import HelloWorld

app = Flask(__name__)
api = restful.Api(app)

api.add_resource(HelloWorld, '/')

if __name__ == '__main__':
    app.run(debug=True)

And the HelloWorld.py is:

from flask.ext import restful
from app import app

class HelloWorld(restful.Resource):
    def get(self):
        return {'hello': 'world'}

运行应用程序会出现异常:

ImportError: No module named app on HelloWorld.py

我确实需要访问应用程序来读取一些信息,例如app.config,我怎样才能让它发挥作用?


你有一个循环导入;当线from resource.HelloWorld import HelloWorld执行,app还没有被分配到,所以在Helloworld.py线from app import app fails.

要么导入HelloWorld later:

from flask import Flask
from flask.ext import restful

app = Flask(__name__)
api = restful.Api(app)

from resource.HelloWorld import HelloWorld
api.add_resource(HelloWorld, '/')

if __name__ == '__main__':
    app.run(debug=True)

或仅导入app模块输入HelloWorld.py:

from flask.ext import restful
import app

class HelloWorld(restful.Resource):
    def get(self):
        return {'hello': 'world'}

并参考app.app在稍后调用的函数或方法中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python Flask-restful 无法获取资源类中的应用程序访问权限 的相关文章

随机推荐

  • 如何在 Seaborn 热图单元格中显示多个注释

    我希望seaborn 热图在热图的每个单元格中显示多个值 为了清楚起见 这是我想要看到的手动示例 data np array 0 000000 0 000000 0 231049 0 000000 0 231049 0 000000 lab
  • 循环名称参考

    我有这个脚本 bin bash function contains local n array 1 local value 2 for item in array do item value return 0 done return 1 a
  • MySQL属性数据库

    我有一个属性数据库 每个属性值都存储在一个表中 并带有其父属性的 ID 在独立表中 我会编写一条 SQL 语句来提取数据 WHERE username AND domain 在属性表中 由于每个值都存储为单独的行 所以我不能这样做 我有一个
  • 使用 ASP.NET Razor MVC 仅包含部分视图的一部分

    我正在使用 ASP NET Razor MVC 并对我不想在每个页面上更新的常见内容使用部分视图 我使用以下语法来包含我的部分视图 Html Partial PartialView 在特定的部分视图上 我有两个 DIVS div class
  • Pytorch 进度表学习率

    我正在尝试重新实现一篇论文 该论文建议调整学习率 如下所示 学习率降低了factor耐心时期 10 的回归值改变值0 0001 我应该使用torch optim lr scheduler ReduceLROnPlateau 我不确定应该向每
  • 如何使用 CoreGraphics 用 alpha 颜色填充矩形?

    在我的drawRect方法中 我正在绘制一个PNG图像 最重要的是 我想绘制一个具有 20 alpha 颜色的矩形 如下所示 UIColor colorWithWhite 0 0 alpha 0 2 set UIRectFill rect
  • 如何使用spark/scala +代码+配置通过远程hive存储(s3 orc)在sparksql中加载文件

    intellij spark gt Hive Remote 存储在S3上 orc格式 无法通过 Spark scala 读取远程 Hive 表 能够读取表架构 但无法读取表 线程 main java lang IllegalArgument
  • 用于打印数字序列的 C 线程:偶数和奇数打印线程并行运行

    我是多线程编程的新手 我尝试使用并行运行的偶数和奇数打印线程来打印数字序列 执行时 代码进入死锁 谁能帮我解决这个问题 include
  • Android 应用程序在方向更改期间丢失数据

    我有一个从教程中复制的应用程序 用于捕获图像MediaStore ACTION IMAGE CAPTURE 当我在手机上运行该应用程序时 我遇到了一些奇怪的情况 即使我没有移动手机 相机应用程序本身也会在操作过程中多次翻转其方向 在返回教程
  • MediaPlayer - setAudioAttributes 无法正常工作

    我正在尝试创建警报 一切正常 但流类型始终是媒体 即使我使用STREAM ALARM since setStreamType已弃用 我正在使用setAudioAttributes相反 但它似乎不起作用 这是我的代码 class AlarmR
  • 规范与非规范终端输入

    我正在准备考试 我对 Unix 中规范与非规范输入 输出的工作方式感到困惑 例如 curses 我知道有一个缓冲区可以应用 行规则 来进行规范输入 这是否意味着非规范输入会绕过缓冲区 或者只是意味着不应用任何线路规则 此过程对于输入和输出操
  • android 库项目中的方法引用过多 - ClassNotFoundException

    我有一个库项目 我正在使用 AAR 文件在主 android 项目中使用它 我现在得到了著名的 65k 方法限制 这是我所期望的 但我几乎没有疑问 我已在主项目的 libs 文件夹中添加了 AAR 文件 并在 build gradle 中编
  • 使用 jackson-dataformat-xml 自定义根元素进行 XML 反序列化?

    所以我用杰克逊JSON 序列化 反序列化到目前为止已经成功 现在我也尝试使用它XML 序列化 反序列化使用它的jackson dataformat xml 2 3 0 jar 我用过 objectmapper reader Student
  • 绑定中 Datetime 对象的 StringFormat 返回 0 表示小时和分钟

    我使用 Datetime Now 创建一个 Datetime 对象 并将其作为类的属性 当我将其绑定到网格视图时
  • 如何告诉 Fluent NHibernate 不要映射类属性

    我有一个在 Fluent nhibernate 中映射的类 但我希望映射忽略其中一个类属性 使用下面的类和映射我收到此错误 以下类型不得用作代理 iMasterengine Data Model Calendar 方法 get HasEve
  • pickle.load() 在 Windows 中引发 EOFError

    代码是这样的 with open pickle f r as fhand obj pickle load fhand 这在 Linux 系统上工作正常 但在 Windows 上不行 它显示 EOFError 我必须使用rb模式使其在 Win
  • 配置 XML 序列化的替代方案

    目前 我们使用一个巨大的配置对象 该对象与 XML 序列化 这在大多数情况下都工作得很好 但我们发现 在断电和应用程序崩溃的情况下 文件可能会处于无法正确反序列化的状态 从而有效地损坏配置信息 我想使用内置的app config 但它似乎不
  • 最大最近值sql

    我有一个包含一些数值 直径 的表格 18 21 27 34 42 48 60 76 89 114 ETC 例如 如果我在文本框中输入一个数字 如何选择最大最接近的值 25 选择 27 100 选择 114 48 选择 48 我输入了以下代码
  • Subversion 1.5 的性能很糟糕吗?

    我们一直在致力于一个每个人都在主干上工作的项目 该项目已经达到了我们的开发团队不断壮大的程度 我们终于开始发布客户端 都是好事 因此 为了帮助协调这一切 我们开始遵循 SVN 的分支 合并等最佳实践 我们面临的问题是合并需要花费 20 分钟
  • python Flask-restful 无法获取资源类中的应用程序访问权限

    这是来自的示例代码Flask restful 文档 http flask restful readthedocs org en latest quickstart html a minimal api from flask import F