Map.resource 的 Pylons 路线 url_for

发布于 2024-11-13 15:00:45 字数 281 浏览 1 评论 0原文

如何使用 url_for 获取静态路由资源的 get、post、put 和删除 URL?

例如,如何获取 id=1 的资源的 PUT URL,以及 routing.py 中定义的路由,如下所示:

map.resource('user', 'users', controller='user')

我知道正确的 URL 是 /users/1,但我不想对其进行硬编码。

How do I get the get, post, put and delete URLs for a restful routes resource using url_for?

For example, how do I get the PUT URL for a resource with id=1, and routes defined in routing.py like so:

map.resource('user', 'users', controller='user')

I know the correct URL is /users/1, but I don't want to hard code it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

遗心遗梦遗幸福 2024-11-20 15:00:45

查看: http://routes.groovie.org/restful.html

url('user', id=1)

应该给你 '/用户/1'

Check out: http://routes.groovie.org/restful.html

url('user', id=1)

should give you '/users/1'

小瓶盖 2024-11-20 15:00:45

在routes.py中,您的路线应该是:

map.resource('user', 'users/{id}', controller='user' action="some_action")

并且在您的控制器中,您可以使用url_for获取此URL,如下所示:

url_for(controller="user", action="some_action", id=1)

参考:第 9 章:URL、路由和调度,Pylons 书籍。

我必须警告你,这是在 Pylons 0.9.7 中使用的,但在 Pylons 1.0 中没有使用。 url_forredirect_to 已重新设计。如果您想在控制器中重定向,则必须编写:

redirect(url(controller="user", action="some_action", id=1))

或者在您的情况下:

url(controller="user", action="some_action", id=1)

参考:Pylons 1.0 发布

In routes.py your route should be:

map.resource('user', 'users/{id}', controller='user' action="some_action")

and in your controller you can get this URL with url_for like this:

url_for(controller="user", action="some_action", id=1)

Ref: Chapter 9: URLs, Routing and Dispatch, Pylons book.

I must warn you that this was used in Pylons 0.9.7, but it is not used in Pylons 1.0. url_for and redirect_to are redesigned. If you want to redirect in your controller you must write:

redirect(url(controller="user", action="some_action", id=1))

Or in your case:

url(controller="user", action="some_action", id=1)

Ref.: Pylons 1.0 Released

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文