问题标签 [python-routes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1064 浏览

python - 路由到基于字符串的方法

我试图在 Python 中调用基于字符串的方法,类似于 Tornado 基于 URL 路由请求的方式。例如,如果我有字符串“/hello”,我想在某个类中调用方法“hello”。我一直在研究 Python Routes 并提出了以下解决方案:

但是,我想添加将部分字符串作为参数传递给方法的功能。例如,我想调用字符串“hello/5” hello(5)(再次非常类似于 Tornado 的路由)。这应该适用于任意数量的参数。有没有人对此有好的方法?是否可以在不是请求 URL 的字符串上使用 Tornado 的路由功能?

0 投票
1 回答
1347 浏览

python - 使用 WSGI 的 Cherrypy 路由

我正在尝试将某些 URL 路由到移植的 WSGI 应用程序,并将子 URL 路由到普通的cherrypy 页面处理程序。

我需要以下路线才能工作。所有其他路由应返回 404。

  • /api -> WSGI
  • /api?wsdl -> WSGI
  • /api/goodurl -> 页面处理程序
  • /api/badurl -> 404 错误

挂载在 /api 的 WSGI 应用程序是一个基于传统 SOAP 的应用程序。它需要接受 ?wsdl 参数,仅此而已。

我正在 /api/some_resource 编写一个新的 RESTful api。

我遇到的问题是,如果资源不存在,它最终会将错误的请求发送到遗留的肥皂应用程序。最后一个示例“/api/badurl”最终会转到 WSGI 应用程序。

有没有办法告诉cherrypy只将前两条路由发送到WSGI应用程序?

我写了一个简单的例子来说明我的问题:

下面是一些单元测试:

输出:

0 投票
1 回答
270 浏览

python - RESTful Python 路由 - 不工作?

Python 中的RESTful 路由似乎不起作用。例如,

不关心REST 方法是 PUT、DELETE 还是 POST。它只在我的网址中查找 匹配项。/user/{id}

所以当我发送一个DELETE方法时http://127.0.0.1/index.py/user/1

我总是得到{'action': u'update', 'controller': u'updateUser', 'id': u'1'}哪个是GET来自map.connect("update user", "/user/{id}", controller = "updateUser", action = "update", conditions=dict(method=["GET"]))

任何想法我做错了什么?

编辑

阿帕奇配置文件,

顺便说一句,在我的 Apache 错误日志中,我总是收到wsgi:error带有打印结果的警告,

[2015 年 8 月 15 日星期六 16:03:41.871541] [wsgi:error] [pid 7068:tid 836] {'action': u'update', 'controller': u'updateUser', 'id': u'1' }

0 投票
1 回答
929 浏览

python - Python 路由和调度程序 - 如何使用到关联控制器/函数的路由?

我对 Python 作为 PHP 背景的新手感到很困惑。

我试图了解如何从这个Python 路由库调用在路由中设置的控制器。

例如,我有这样设置的路线,

如您所见,在路由中设置的控制器根本没有使用。当匹配时,我在 if-else 条件下调用单个函数。这是乏味和蹩脚的...

这不是我在 PHP 中的做法(我猜你可能也不会在 Python 中这样做)。因为我希望路由会在请求匹配时直接调用控制器 -没有任何进一步的 if-else 条件。

知道如何在没有controller = "addUser"下面的情况下调用addUser函数吗?

0 投票
1 回答
259 浏览

python-3.x - Python2 连接框架 - 目录结构中的控制器

我正在使用连接框架为我的应用程序设置 REST API 访问。

我的应用程序是基于 python2 构建的,我为 python2 安装了 connexion 框架,并通过编辑器 (editor.swagger.io) 使用了 yaml 文件。我下载了 Python Flask 服务器代码,将其转换为与 Python2 兼容并针对单个控制器进行了测试。

当控制器放置在与服务器运行的地方相同的目录中时。一切都很好 - 所有路线都已添加并按预期工作。然后我根据一些业务逻辑继续拆分控制器,并希望每个控制器都有一个树结构。

就像是

等等。这不适用于 python2。它似乎适用于python3。任何想法为什么?
我从日志中收到以下错误

在 yaml 配置文件中,我将 OperationId 添加为 api.magic1.func1() 等等。

0 投票
1 回答
1145 浏览

python - pandas/flask:下载数据帧的按钮

我正在努力在烧瓶中复制一个 tkinter 接口。我有使用“to_html()”在页面上显示的熊猫数据框。我使用了[本教程][1]。但我需要创建按钮来下载数据框。

创建和下载数据帧的函数位于其自己的目录“/testmodule”中的自定义模块中。下载数据帧的函数与创建和显示数据帧的函数是分开的。

下面是 testmodule.py 的示例代码:

我已经尝试为下载编写一个路由,但是得到了未定义数据帧值的错误,我理解,因为我正在导入一个对 download_df 的函数调用,与创建 dfs 的函数分开。我只是不知道如何将 df1 和 df2 的值从第一个函数传递到第二个函数中,一旦它位于 routes.py

我将有一些按钮,允许下载从现有 2 的列中制作的新 dfs。

按钮是否可以从模板本身调用下载函数(download_df),或者只能通过在 routes.py 中设置函数来完成?如果 routes.py,我如何将 df 变量传递给路由?或者,我需要创建一个临时文件吗?

[1]:https ://sarahleejane.github.io/learning/python/2015/08/09/simple-tables-in-webapps-using-flask-and-pandas-with-python.html/ \