我正在关注一本名为 Rails Solutions: Rails Made Easy 的书,它是为 rails 2 编写的,但我使用的是 rails 3,这让事情变得非常有趣,让我学到了很多东西,这很好,但我坚持上述问题。我在 Stack 和其他网站上阅读过,我认为这可能是路线问题,但到目前为止,这本书还没有提到任何关于路线的内容。
路线.rb
List::Application.routes.draw do
match ':controller(/:action(/:id))(.:format)'
end
应用程序/视图/分类/show.html.erb
<p>
<strong>Title: </strong> <%= @classified.title %><br />
</p>
应用程序/控制器/classified_controller.rb
class ClassifiedController < ApplicationController
def list
@classifieds = Classified.find(:all)
end
def show
@classifieds = Classified.find(params[:id])
end
def new
@classified = Classified.new
end
def create
@classified = Classified.new(params[:classified])
if @classified.save
redirect_to :action => 'list'
else
render :action => 'new'
end
end
def edit
end
def update
end
def delete
end
end
分类中的 NoMethodError#show
显示 /home/mark/Documents/RoR/list/app/views/classified/show.html.erb 其中第 3 行提出:
nil:NilClass 的未定义方法 `title' 提取的源代码(在第 3 行附近):
1:2:
3: 标题: <%= @classified.title %>
4: