我有一个我知道的应用程序
def new
respond_to do |format|
format.html { new_or_edit }
format.js {
@category = Category.new
}
end
end
当我点击一个链接时被调用。
这导致 new_or_edit 被调用(在同一个文件中定义)。
def new_or_edit
@categories = Category.find(:all)
@category = Category.find(params[:id])
@category.attributes = params[:category]
if request.post?
respond_to do |format|
format.html { save_category }
format.js do
@category.save
@article = Article.new
@article.categories << @category
return render(:partial => 'admin/content/categories')
end
end
return
end
render 'new'
end
经过一些测试,我发现每次执行都停止在
@category = Category.find(params[:id])
出现错误“找不到没有 ID 的类别”。当我打印出来时,Params 没有 :id 哈希。这是因为我必须在创建默认 :id 字段之前将其保存到数据库中吗?