Friday, November 14, 2008

Polymorphic_url should compact given array

ネストした URL にしたい場合、たとえば /groups/1/users だと、routes.rb は、こんな感じ。
map.resources :groups, :has_many => :users

さらに、 group を指定しないユーザーの一覧を取得したい場合 (/users) には resources を追加。
map.resouces :users


polymorphic_path を使うと
polymorphic_path([@group, :users]) # A
polymorphic_path(:users) # B


ここで、 @group が nil だったら、 A は B と同じ解釈をしてほしいいのだけど、
"NoMethodError: undefined method nil_class_users_url'"

のようにエラーになってしまうので、patch を投げたら、 commit された。

非常に小さな変更だけど、パッチが受け入れられるとうれしいもんですね。

No comments: