我正在尝试使用rails 3创建一个WIKI页面。我正在按照http://garrickvanburen.com/archive/how-to-build-a-wiki-with-ruby-on-rails-part-1/
的教程进行操作我相信他的教程是在rails 2中,所以我不得不改变编码。我在第6节并且在app / views / revisions / new.html.erb中输入了编码。一旦我在localhost / revisions / new中加载服务器,我得到以下错误 -
RevisionsController#new
中的NoMethodError未定义的方法`[]'为nil:NilClass
Rails.root:/ home / whitey7 / wiki 应用程序跟踪|框架跟踪|完整跟踪
app / controllers / revisions_controller.rb:30:在'new'
中当我拉出revisions_controller文件并查看第30行时,根据教程中的内容,它似乎是正确的或正确的。其他一切似乎工作正常,但这。我似乎无法找到答案或如何解决这个问题。任何帮助或一些指导将不胜感激。代码低于revisions_controller文件中列出的代码。谢谢大家!!
# GET /revisions/new
# GET /revisions/new.json
def new
@revision = Revision.new
@revision.update_attribute('person_id',
Person.find_or_create_by_name(params[:person][:name]).id) **#Inputed from Tutorial.**
respond_to do |format|
format.html # new.html.erb
format.json { render json: @revision }
end
end
答案 0 :(得分:1)
params [:person]未设置。如果您只想在这种情况下避免错误,请更改为:
unless params[:person].nil?
@revision.update_attribute('person_id',
Person.find_or_create_by_name(params[:person][:name]).id)
end