Rails,获取模型中的资源路径

jon*_*atr 34 resources ruby-on-rails

如何获取模型中资源的路径?我需要将它存储在数据库中,并希望获得与resourcename_path(资源)相同的URL

hrd*_*rbl 71

在Rails 3和Rails 4中,您可以使用:

Rails.application.routes.url_helpers
Run Code Online (Sandbox Code Playgroud)

例如

Rails.application.routes.url_helpers.posts_path
Run Code Online (Sandbox Code Playgroud)

  • 仅供参考,如果您需要访问引擎的路由,则等效于:MyEngineName :: Engine.routes.url_helpers.some_path (3认同)
  • `Rails.application.routes.url_helpers.posts_path`完成了这项工作!谢谢! (3认同)

idl*_*ers 39

在Rails 3中,您可以在模型中包含url助手(虽然它通常不是处理事物的最佳方式):

class MyClass < ActiveRecord::Base
  include Rails.application.routes.url_helpers
end
Run Code Online (Sandbox Code Playgroud)

在Rails 2中,我认为是include ActionController::UrlWriter,但我不记得了.谷歌是你的朋友.

  • @jvatic:你介意给我们答案吗? (3认同)