0

内部アプリを構築しようとしています。メール付きのモデルがあります。各メールには ID があります。ただし、次のクエリで個別の電子メール スレッドを表示するビューがあります。

@subjects = Email.all(:group => "title")

次のコードで結果を表示しています。

<% @subjects.each do |subject| %>
  <tr>
    <td><%= subject.title %></td>
  </tr>
<% end %>

ユーザーがこれらの異なるタイトルのいずれかをクリックして、そのタイトルに一致するすべてのメールを表示するページに移動できるようにしたいと考えています。

渡すパラメーターを調査しましたが、何をすべきかよくわかりません。現状では、私は次のようなことを試みていました:

<%= link_to 'Show thread', :action => :thread, :title => subject.title %>

これにより、便利で便利な URL が生成されます。しかし、これはうまくいかないようです:

@emails = Email.find(params[:title])

ヘルプ、ヒント、または提案をいただければ幸いです。

4

1 に答える 1

2

タイトルの値と同じ ID を持つレコードを検索しています。代わりに、タイトル フィールドに対して照合を行う必要があります。

単一のレコードを取得する場合

@emails = Email.where(title: params[:title]).first 

また

@emails = Email.find_by_title(params[:title])

複数のレコードを取得したい場合

@emails = Email.where(title: params[:title]) 
于 2012-07-13T15:58:34.233 に答える