簡體   English   中英

Ruby on Rails:在link_to輔助路徑中使用Variable

[英]Ruby on Rails: Use Variable in link_to helper path

我有一個接收變量bar的HAML部分,我想在link_to路徑中注入該變量。

例如:

= link_to new_foo_path, class: 'source card' do
    .stuff

我想用bar替換foo。

我試過了:

= link_to new_#{bar}_path, class: 'source card' do

還有其他十幾件事,但似乎沒什么用。

思考?

你可以這樣試試:

link_to send("new_#{bar}_path"), class: "source card" do

基本上,send使某些方法或變量成為可能,並且它允許您將該字符串中的所有內容組合成一個變量。

我遇到了類似的情況所以我創建了一個視圖助手。 對於你的情況,我猜你可以做類似的事情。

helpers/application_helper.rb創建一個視圖助手函數:

def custom_path pathvar
   if pathvar == 'foo'
      new_foo_path
   elsif pathvar == 'bar'
      new_bar_path
   end
end

然后在您的視圖中,您可以像這樣使用它:

= link_to custom_path(bar), class: 'source card' do

您可以根據需要修改示例。 這對我來說看起來更優雅。

您可以像這樣向鏈接助手添加參數:

link_to "New Foo", new_foo_path(bar: "bar")

我想你可以使用eval

= link_to eval("new_#{bar}_path"), class: 'source card' do

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM