0

私は2つのモデルがあります:ユーザーリソースの特定のビューを表示するにはどうすればよいですか?

User 
has_many :prices 

Price 
belongs_to :users 

を私はこのようなビューを表示したい:

<% show this view if price belongs to current user %> 
<div> Price of Current User </div> 
<% end %> 

は、私はこれをどのように行うのでしょうか?

+0

私はあなたが疑問を理解しているとは確信していませんが、 '<%= current_user.prices%>'はあなたをカバーしていませんか? – shuriu

+0

@shuriuもっと理にかなって私の質問を変えました。 – LearningRoR

答えて

2

まず、価格モデルの関連は、私はまだ私は質問を理解している場合ではないと確信している、すべての

belongs_to :user #not users 

第二にする必要がありますが、私はあなたに私の2セントをあげる:

あなたは、単にあなたのビューで、現在のユーザーの価格を表示する場合:

<% current_user.prices.each do |price| %> 
    <div><%= price %></div> 
<% end %> 

この意志出力各ユーザの価格。

あなたの価格のすべてをループし、価格はあなたがのようなものを使用でき、ユーザーに属しているときに何かを表示したい場合:あなたは@pricesを持っていると仮定すると

<% @prices.each do |price| %> 
    <div><%= price %> 
    <% if price.user == current_user %> 
    <span> << out of all the prices, this is yours</span> 
    <% end %> 
    </div> 
<% end %> 

を(@prices =価格.all)、およびcurrent_userがコントローラに定義されている場合、このコードはすべての価格をループし、価格が現在のユーザーに属するときにスパンを追加します。

これはあなたに役立ちます。また、関連についてはthis guideを見てください。

+0

私はより明確にすべきだった。ビューは 'show action'を使用していたので、1ページあたり1つの価格しか表示されませんでした。いずれにせよ、それは私の問題を解決しました。ありがとう。 – LearningRoR

0

=は、==である必要があります。すべての

+0

私のために何も変わっていません。 – LearningRoR

関連する問題