Rails:如何访问 RESTful 助手?
Posted
技术标签:
【中文标题】Rails:如何访问 RESTful 助手?【英文标题】:Rails: how do you access RESTful helpers? 【发布时间】:2010-09-30 20:04:54 【问题描述】:我正在尝试解决这个guide to Rails routing,但我被困在3.3 部分:
创建一个 RESTful 路由也会在您的应用程序中提供一堆帮助程序
然后他们列出了一些帮助者,例如 photos_url
、photos_path
等。
我的问题:
在哪里可以找到“可用”助手的完整列表?
有没有办法在控制台中调用助手?我创建了一个应用程序,然后使用script/console
打开了控制台。我试图像这样在控制台上调用其中一个助手:
>> entries_url
但是得到了:
NameError: undefined local variable or method `entries_url' for #<Object:0x349a4>
from (irb):8
【问题讨论】:
【参考方案1】:我想这可能就是你要找的……http://topfunky.com/clients/peepcode/REST-cheatsheet.pdf
【讨论】:
【参考方案2】:rake routes
在命令行中应该会为您提供该列表。
【讨论】:
取第一列并附加 _url 以获得完整的 URI 或 _path 以获得不包括域名的 URI。 有没有办法生成一个助手列表,并明确写出 _url 和 _path 和参数?在嵌套资源的情况下最有帮助,可以清楚地查看每个帮助程序采用的参数(如果有的话)。【参考方案3】:你有几个问题,其中大部分已经被下面的人回答了。
对于未完全解决的问题,答案是:是的,您可以使用脚本/控制台查看您的路线去向。只需输入app.[route_helper]
,它就会响应路径。例如app.users_path
将返回/users/
因此,对于您的示例,输入 app.entries_url
以获得完整 URL - 或 app.entries_path
输入其在控制台中的相对路径。
【讨论】:
额外的 anchovies 是它可以完成选项卡,例如,在控制台输入 app.edit[tab] 并列出所有以“edit”开头的路由辅助方法。【参考方案4】:根据记忆,由于某种原因,您无法从控制台调用 url/path 助手。
【讨论】:
【参考方案5】:您可以通过添加“helper.”来访问控制台中的其他助手; IE。 helper.progress_box(当然假设存在#progress_box)
【讨论】:
以上是关于Rails:如何访问 RESTful 助手?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ruby on rails 中访问 rails 助手和嵌入资产 javascript 文件中的 ruby?