每个循环替换的Ruby变量

每个循环替换的Ruby变量,ruby,variables,substitution,Ruby,Variables,Substitution,我需要在两个地方替换X_变量。 对于第一个X_变量,我希望保留文本“remove” 对于第二个X_变量,我想保留'd_cars_path' <% @cars.each do |x| %> <% @a = @b.send(x) %> <% if @a == true %> <%= button_to "removeX_VARIABLE", X_VARIABLEd_cars_path(:id => @user.id), cl

我需要在两个地方替换X_变量。 对于第一个X_变量,我希望保留文本“remove” 对于第二个X_变量,我想保留'd_cars_path'

<% @cars.each do |x| %>
    <% @a = @b.send(x) %>
    <% if @a == true %>
      <%= button_to "removeX_VARIABLE", X_VARIABLEd_cars_path(:id => @user.id), class: "btn btn-large btn-primary" %>
    <% end %>
<% end %>

@user.id),类:“btn btn大型btn主”%>
我正在寻找有关变量替换语法的帮助。谢谢。

我要写:

<% @cars.each do |x| %>
  <% if @b.send(x) %>
    <%= button_to "remove#{x}", 
          send(:"#{x}d_cars_path", id: @user.id), 
          class: "btn btn-large btn-primary" %>
  <% end %>
<% end %>


你想要@user.id)这样的结果吗,class:“btn btn large btn primary”%>+1我更喜欢这种方法(我也给出了haml版本)。谢谢。我不知道send(:)函数。@Tony您在代码中使用了
send
:-)也许您不知道可以将它与隐式对象(
self
)一起使用。