我是RoR的新手并且在没有scafolding的情况下尝试简单的CRUD操作。我有一个名为ccword的模型,控制器名为WordsController。
问题是我正在创建简单的'create'并引导我犯这个错误: C cwordsController #create
中的NameError未初始化的常量CCwordsController
这就是我的控制器中的create方法的样子:
def create
@ccword = CCword.new(params[:ccword])
respond_to do |format|
if @ccword.save
flash[:notice] = 'Word was successfully added.'
format.html { redirect_to(@ccword) }
format.xml { render :xml => @ccword, :status => :created, :location => @ccword }
else
flash[:notice] = 'Error.'
format.html { render :action => "show" }
format.xml { render :xml => @ccword.errors, :status => :unprocessable_entity }
end
end
end
end
我的观点new.html.erb看起来像:
<h1>Words new</h1>
<% form_for (@ccword) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :word %><br />
<%= f.text_field :word %>
</p>
<p>
<%= f.label :meaning %><br />
<%= f.text_field :meaning %>
</p>
<p>
<%= f.submit 'create' %>
</p>
<% end %>
当我点击创建时,我得到了NameError。 在控制台中显示以下日志:
Processing ApplicationController#create (for 127.0.0.1 at 2009-11-19 09:33:06) [POST]
Parameters: {
"commit"=>"Create",
"authenticity_token"=>"hqf54HkXSaTPGejGSbEPcw3ZpOy1Ayp3gvti29gc7Eg=",
"c_cword"=>{"meaning"=>"2", "word"=>"2"}
}
NameError (uninitialized constant CCwordsController):
有什么想法吗?
答案 0 :(得分:0)
问题在于:
format.html { redirect_to(@ccword) }
尝试将其更改为
format.html { redirect_to word_path(@ccword) }