小编Dav*_*ave的帖子

用户#show中的NoMethodError

我正在关注rails教程@ http://railstutorial.org

在第11章,我遇到了显示用户微博的问题.

根据本教程,RSPEC测试应该通过.但是,它失败了


 1) UsersController GET 'show' should show the user's microposts
 Failure/Error: get :show, :id => @user
 undefined method `model_name' for NilClass:Class
 # ./app/views/users/show.html.erb:10:in `_app_views_users_show_html_erb__49
 # ./spec/controllers/users_controller_spec.rb:71
Run Code Online (Sandbox Code Playgroud)

当我尝试访问与其关联的微博的用户页面时,我得到一个例外:

NoMethodError in Users#show

Showing C:/Documents and Settings/XXXXX/workspace/sample_app/app/views/users/show.html.erb where line #10 raised:

undefined method `model_name' for NilClass:Class
Extracted source (around line #10):

7:       </h1>
8:       <% unless @user.microposts.empty? %>
9:         <table class="microposts" summary="User microposts">
10:           <%= render @microposts %>
11:         </table>
12:         <%= will_paginate @microposts %>
13:       <% end %>
Rails.root: …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails rspec2 ruby-on-rails-3

4
推荐指数
1
解决办法
2595
查看次数

标签 统计

rspec2 ×1

ruby-on-rails ×1

ruby-on-rails-3 ×1