nil的未定义方法`LastName':仅在服务器上的NilClass

时间:2013-10-08 03:34:40

标签: ruby ruby-on-rails-3 heroku live production

我不知道什么是错的,在生产模式下一切都在localhost上工作,但是当我在heroku上托管它时,我遇到了这个问题。请帮帮我

    12: <% @myestate.each do |prop| %>
    13:     <% @name = User.find_by_id(prop.user_id) %>
    14:     <tr>
    15:       <td><%= link_to @name.LastName, management_show_path(:user_id => @name.id) %></td>
    16:     </tr>
    17: <% end %>

应用程序跟踪

app/views/management/index.html.erb:15:in `block in _app_views_management_index_html_erb___3570841627314272835_37900600'
app/views/management/index.html.erb:12:in `_app_views_management_index_html_erb___3570841627314272835_37900600'
app/controllers/management_controller.rb:9:in `index'

控制器索引操作

  def index
    @myestate1 = Estate.where(:Mgmt => current_user.Company)
    @myestate = @myestate1.select("DISTINCT(user_id)")
    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @managements }
    end
  end

错误消息

undefined method `LastName' for nil:NilClass

1 个答案:

答案 0 :(得分:0)

我偶尔会遇到这个问题。我所看到的是你的@name = User.find_by_id(prop.user_id)(视图控制器中代码的tisk-tisk)没有找到任何东西,或者至少User.find_by_id(prop.user_id)返回nil。我猜测User是一个模型类,你有没有播种过数据库?完成迁移?那些在开发和部署之间不同步。