在Rails中为link_to方法发送特定变量值

时间:2015-12-19 14:48:54

标签: ruby-on-rails link-to

有没有办法在Rails中为link_to方法发送特定的变量值?在我的情况下,当用户按下link_to按钮时,我希望变量@result为5而不是10。

<%= link_to t('meters'), full_report_path, class: 'btn btn-sm btn-success' %>

def full
  @result = 10
end

1 个答案:

答案 0 :(得分:5)

你需要发送带有link_to的参数,它就是方法。

<%= link_to t('meters'), full_report_path(:result => 5), class: 'btn btn-sm btn-success' %>

在你的方法中,

def full
  if params[:result].present? 
    @result = params[:result]
  else 
    @result = 10
  end
end

您可以尝试检查是否从链接调用该方法,方法是检查是否存在参数,如果存在,则为5,否则为10。

http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to你可以在这里找到它。