0

ビューのリンク テキストを病院、国として表示したいと考えています。国はガイドライン属性なので、「病院」からガイドライン.国にアクセスして表示できるようにする必要があります

例: Get Well Hospital, Sickland

これを正しくコーディングする方法がわかりません。現時点でビューファイルにある

<% @list.each do |hospital| %>

        <tr class="tablerow">
            <td><%= link_to (hospital, country), :action => :topichospital, :hospital => hospital, :country=>country %></td>
        </tr>

持っていたときはうまくいきましたが、国を追加する方法もわかりません

 <% @list.each do |hospital| %>

            <tr class="tablerow">
                <td><%= link_to hospital, :action => :topichospital, :hospital => hospital %></td>
            </tr>

Guidelines_controller.rb での私の listhospital アクションは

def listhospital
    @list = Guideline.order(:hospital).uniq.pluck(:hospital)
    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @guidelines }
    end
  end
4

2 に答える 2

1

link_to をに変更します

<%= link_to "#{hospital}, #{country}", { :action => :topichospital, :hospital => hospital, :country=>country } %>

これにより、渡された最初のパラメーターが文字列に変換されます。最初のパラメーターとして渡されたとき、レールが link_to でどのように解釈するかはわかりませんが、これにより、それぞれのメソッドが(hospital, country)確実に呼び出されます。to_s

更新: IIRC、pluck属性を組み合わせるために使用できます

# postgre
@list = Guideline.order(:hospital).uniq.pluck("hospital || ', ' || country")

# mysql
@list = Guideline.order(:hospital).uniq.pluck("CONCAT(hospital, ', ', country)")

その後link_to hospital、ビューで使用できます。

更新: これはちょっとしたハックになりつつあります。コントローラーを次のように変更することをお勧めします

@list = Guideline.select('hospital, country').order(:hospital).uniq

次に、あなたの見解で

<% @list.each do |guideline| %>
  <tr class="tablerow">
    <td><%= link_to "#{guideline.hospital}, #{guideline.country}", { :action => :topichospital, :hospital => guideline.hospital, :country => guideline.country }%></td>
  </tr>
<% end %>
于 2013-03-18T00:34:45.187 に答える
0

私はあなたが探していると思います:

<%= link_to "#{hospital}, #{country}", :action => :topichospital, :hospital => hospital, :country=>country %>

ブロックを次の場所に渡すこともできますlink_to:

<%= link_to :action => :topichospital, :hospital => hospital, :country=>country do %>
  <%= hospital %>, <%= country %>
<% end %>

http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to

于 2013-03-18T00:34:41.230 に答える