2013-04-16 14 views
5

Potrzebuję dobrego sposobu na utworzenie zestawu ścieżek Rails 3 z tablicy, w helperie link_to.Ścieżka z ciągu znaków z parametrem

mam:

TITLES = ['foo', 'bar', 'baz'] 
TITLES.each do |t| 
    = link_to t, (.....path....) 

ten sposób muszę skonstruować zestaw ścieżek:

foo_super_users_path(user) 
bar_super_users_path(user) 
baz_super_users_path(user) 

Jak widać, muszę dodać sam prefiks _super_users dla każdej ścieżce i przekazać obiekt użytkownika. Jako wynik końcowy potrzebuję czegoś w rodzaju:

link_to t, foo_super_users_path(user) 
link_to t, bar_super_users_path(user) 
link_to t, baz_super_users_path(user) 

Twoje sugestie są naprawdę doceniane.

+0

Może to być podobny do tego, co szukasz: http://stackoverflow.com/questions/2792946/how -do-i-dynamicznie-zmień-ścieżkę-na –

Odpowiedz

7

Jak o

TITLES.each do |t| 
    = link_to t, eval("#{t}_super_users_path(user)") 
4

Zamiast eval użytku public_send

TITLES.each do |t| 
    = link_to t, public_send("#{t}_super_users_path", user) 
+0

public_send ("# {t} _super_users_path", użytkownik) –