これは私が作っているよりも簡単かもしれないと思います...
現在、コントローラー(ユーザー)にこれがあります
def portfolios
@title = "Portfolios"
@user = User.find_by_permalink(params[:id])
@portfolios = @user.portfolios
@collections = @user.collections.find_all_by_portfolio_id(1)
@collections = User.find_by_permalink(params[:id])
render 'show_portfolios'
end
そして、これは私の見解では:
<% @portfolios.each do |portfolio| %>
<tr>
<td><%= image_tag("portfolioIcon.png", alt: "Portfolio Logo")%></td>
<td><%= portfolio.name %></td><br/>
</tr>
<tr>
<% (1..@user.collections.find_all_by_portfolio_id(portfolio).length).each do |collection| %>
<td><%= @user.collections.find_all_by_portfolio_id(portfolio) %></td><br/>
<% end %>
</tr>
<% end %>
しかし、角かっこで囲まれたハッシュを返すように見えます:
[#<Collection id: 1, user_id: 1, portfolio_id: 1, name: "User-1-Portfolio-1-Collection-1", created_at: "2013-04-20 10:45:46", updated_at: "2013-04-20 10:45:46">]
そのため、末尾に .name を配置して「User-1-Portfolio-1-Collection-1」を返すことはできません。
データベースは次のようにセットアップされます。 ユーザーは多くのポートフォリオと多くのコレクションを持っています。ポートフォリオはユーザーに属し、結合テーブルを介して多くのコレクションを持っています コレクションはユーザーに属し、結合テーブルを介して多くのポートフォリオを持っています
これが理にかなっていることを願っています。
おそらく、通常のハッシュで求めている情報を抽出する簡単な方法はありますか?