web-dev-qa-db-ja.com

Rails、モデル内のリソースパスを取得

モデル内のリソースへのパスを取得するにはどうすればよいですか?私はそれをデータベースに保存する必要があり、resourcename_path(resource)から取得したのと同じURLを希望します

36
jonepatr

Rails 3では、モデルにURLヘルパーを含めることができます(ただし、通常は物事を処理する最良の方法ではありません)。

class MyClass < ActiveRecord::Base
  include Rails.application.routes.url_helpers
end

Rails 2の場合、include ActionController::UrlWriter、しかし、思い出せません。グーグルはあなたの友達です。

40
idlefingers

Rails 3 and Rails 4では、次のように使用できます。

Rails.application.routes.url_helpers

例えば.

Rails.application.routes.url_helpers.posts_path
74
hrdwdmrbl