2014-01-29 2 views
1

У меня есть ряд link_to с теми же параметрами. Я хочу высушить их, возможно ли передать хэш параметров для ссылки?Передача хэша параметров link_to rails

link_to 'User Profile', @user, remote: true, disable_with: 'loading', class: 'btn' 

Как передать параметры, например хэш, в метод link_to? Я попытался следующие напрасно

args = {remote: true, disable_with: 'loading', class: 'btn'} 
link_to 'User Profile', @user, args 
+0

Что не работает? Все, или просто «disable_with»? – omarvelous

+0

У меня есть ошибка, все не работает –

ответ

1

Я бы начал, посмотрев на the documentation.

Метод определения как такового:

link_to(name = nil, options = nil, html_options = nil, &block) 

Так что, да. Ты можешь.

UPDATE:

В соответствии с просьбой, вот пример:

link_args = {remote: true, data: {disable_with: 'loading'}, class: 'btn'} 
link_to 'User Profile', @user, link_args 
+0

Можете ли вы привести пример в контексте примера, приведенного в вопросе? –

+0

Выполнено ... надеюсь, что теперь имеет больше смысла. – Jon

+0

ahhhh, я понял, что я делаю неправильно, если вы передадите больше аргументов в link_to с хешем, вы получите сообщение об ошибке, единственный способ передать больше аргументов - объединить их в '' 'link_args.merge! ({: class => 'btn'} '' 'Спасибо за вашу помощь –

0

На link_to хелперов у вас есть эта смысловая:

link_to(name, options = {}, html_options = {}, &block) 

я не рекомендовал отдельные варианты, если вы хотите помощник DRY написать приложение в app/helpers/application_helper.rb:

module ApplicationHelper 
    def my_link_to(arg1, arg2, arg3) 
    link_to('User Profile', @user, arg1, arg2, arg3) 
    end 
end 
+0

Можете привести пример в контексте примера, приведенного в вопросе? –

Смежные вопросы