How to access Active Record Object Values ? Ruby on Rails -


i relatively new ruby on rails. made relationship called friendships, has following attributes:

user_id, friend_id, state 

inside friendship.rb model file, have created opposite method me inverse friendships:

class friendship < activerecord::base  def opposite     user = self.user_id;     friend=self.friend_id;     return friendship.where(user_id:friend,friend_id:user);   end  end 

inside view file have:

<h1> requests ive sent: </h1> <%@sent_friendships.each |x|%>   <%=x.opposite%><br>   <%=x.opposite.inspect%> <%end%> 

note: @sent_friendships defined in controller as: @sent_friendships=current_user.friendships.where(state:'pending');

view output:

x.opposite:

#<friendship::activerecord_relation:0x007fd8abcf3498> 

x.opposite.inspect:

#<activerecord::relation [#<friendship id: 4, user_id: 3, friend_id: 1, created_at: "2015-07-01 21:42:21", updated_at: "2015-07-01 21:42:21", state: "requested">]> 

but after calling x.opposite.inspect, how can access specific attributes, example state? if try x.opposite.state error:

undefined method `state' #<friendship::activerecord_relation:0x007fd8a3f612f0> 

i confused? clear .state attribute after calling inspect method? please?!

what returning opposite using active record 'where' activerecord::relation array structure. x.opposite.first.state should want.


Comments

Popular posts from this blog

OpenCV OpenCL: Convert Mat to Bitmap in JNI Layer for Android -

android - org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope -

python - How to remove the Xframe Options header in django? -