无法访问相关对象字段

时间:2015-08-16 18:08:29

标签: ruby-on-rails

所以我是铁杆新手,而且我并不完全确定我做错了什么。我读过的所有内容都表明我正确地做到了这一点。

我有两个模特之间的关系。

class Photo < ActiveRecord::Base
     has_many :votes
     belongs_to :user
  end 

并且

class User < ActiveRecord::Base
  attr_accessible :username, :email, :password, :password_confirmation, :remember_me
  has_many :votes
  has_many :photos
end

以下是我的控制器方法

def index 
  @photos = Photo.order("created_at desc").to_a 
end



def create
    @photo = Photo.new(params[:photo])
    @photo.user_id = current_user.id
    if !@photo.save
      @error = @photo.errors.full_messages.join('. ')
      render view_for_new
      return
    end
  end

我知道这种关系是有效的,因为在我看来这样做时:<%= photo.user %>我得到了一个用户对象,当我做<%= photo.user.inspect %>时,它会显示所有具有正确键和值的预期字段。

但是,我想访问用户名,电子邮件等字段,并在页面上显示这些字段。我该怎么做呢?我尝试过<%= photo.user.email %>和其他一些可用的字段,但它似乎无法正常工作

1 个答案:

答案 0 :(得分:0)

好吧想出来,或至少部分地。

而不是 <button class="navigateButton" wicket:id="rw">Test1</button> <em class="logoutButton"><a wicket:id="rw2">Test</a></em> 我做了<div id="contact" class="modal fade" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">&times;</button> <h4 class="modal-title">Contact Me</h4> </div> <div class="modal-body"> <form method="POST" action="/"> {% csrf_token %} {{ contact_form|crispy }} <input type="hidden" name="form-type" value="contact-form" /> <!--- Here --- > <input type="submit" value="Send" class="btn btn-success" /> </form> </div> <div class="modal-footer"> <!-- The Line was here --> <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> </div> </div> </div> </div> 而且带来了我正在寻找的正确属性。似乎关联正确完成。我不知道为什么<%= photo.user.email %>不起作用,我在网上看到的任何地方似乎都使用那种语法。