Rails アプリで ActiveResource を使用して別の Rails アプリと通信しています (どちらもバージョン 2.3.5 です)。特定のリソース オブジェクトのページにリンクしたいのですが、それを行う良い方法がないようです。私が見つけた醜い方法は、次のように、リソースを模倣する行を routes.rb ファイルに追加することです。
# environment.rb, or in the config/environments/*.rb files
PERSON_URL = "people.example.com"
# person.rb
class Person < ActiveResource::Base
self.site = "http://#{PERSON_URL}"
end
# routes.rb
map.resources :people # or persons, or whatever
# my_view.html.erb
<%= link_to person.name, person_url(person, :host => PERSON_URL) %>
しかし、これはかなり醜いです。現在、実際には存在しない余分なルートがアプリ内に浮かんでいます。もっと良い方法があるはずです。モデル自体に、それ自体の URL を取得する手がかりはありますか? 誰にもヒントはありますか?ありがとう。