2016-11-15 6 views
2

私は、Userに属するアクティベーションモデルを持っています。ユーザーがビューに投稿したアクティベーションの情報を表示しようとしていますが、これを行う方法がわかりません。例えば、 2つのRailsモデルからデータを取得する

class Activation < ApplicationRecord 
belongs_to :user 
default_scope -> { order(created_at: :desc) } 
validates :user_id, presence: true 
validates :dealer_store, presence: true, length: { maximum: 50 } 
validates :customer_name, presence: true, length: { maximum: 50 } 
validates :customer_phone_number, presence: false, length: { maximum: 10 } 

class User < ApplicationRecord 
has_many :activations 
validates :name, presence: true, length: { maximum: 50 } 

私は、ユーザーの活性化のcustomer_phone_numberを得るでしょうどのように

<%= activation.user.dealer_store %>

のように、ユーザIDとアクティベーションのユーザからデータを取得することができるのですか?私は、ユーザーが最初にあなたが望むどの活性化数を決定する必要があります多くのアクティベーションを持っているので、あなたがここにhttps://bitbucket.org/QuriouslyStrong/sample_app

+0

'activation.user.dealer_store'を使用することができます 、これを試すことができます。 –

答えて

0

をそれを見つけることが何か

が欠けているように見えます。それはあなたがすでに活性化インスタンスを持っている場合、それはあなたがあなたのためuser.activations.first.customer_phone_number

探していることになるユーザー最初の活性化は、単にいくつかのactivationsはので、多分あなたがする探している私には奇妙に聞こえる持つactivation.customer_phone_number

を行うことができますだと言いますa has_one & belongs_to関係が多対1の関係ではなく、確かに言うことはできません。

0

すべてのユーザーのアクティベーションがアレイで返されるため、どのアクティベーションを実行するかを特定できる必要があります。

<%= user.activations[0].customer_phone_number %> 

あなたのユーザーに関連付けられた最初の活性化のための情報を与えるだろう...または、あなたが細部にすべてのアクティベーションに関連するすべての変化の電話番号を望んでいた場合、あなたはそれぞれのを反復処理する必要があるだろうブロックによるユーザーのアクティベーション:

<% user.activations.each do |act| %> 
    <li><%= act.customer_phone_number %></li> 
<% end %> 
0

現在のユーザーの電話番号を確認している場合は、これを試すことができます。これは動作しません -

<% current_user.activations.each do |a| %> 
    <%= a.customer_phone_number %> 
<% end %> 

はまた、あなたは、ユーザーのオブジェクトを持っているなら、あなたは、ユーザーオブジェクト

<% user.activations.each do |a| %> 
    <%= a.customer_phone_number %> 
<% end %> 
関連する問題