我正在使用Mongoid后端的rails 3.2.9项目。我正在尝试创建帖子,如果帖子缺少标题和内容,模型应该无法保存它正确执行的操作。当一个对象被修复并通过验证时,我保存它并现在创建一个新帖子。如果我尝试使用缺少的项目保存这个,错误计数似乎只是附加前一个,即使这是两个不同的对象。
我正在使用dynamic_form中的error_messages帮助程序来显示我的错误。任何想法?
以下是示例错误消息:
152个错误禁止保存此帖子 以下字段存在问题: 标题不能为空 标题不能为空 标题不能为空 标题不能为空 标题不能为空
这个清单在很长一段路上继续。代码只是基本的表单代码:
= form_for @post,:as => :post, :url => post_path(:id=>@post.id), :method => :put do |f|
=f.hidden_field :is_question
#content
.title-page
%h1
New Post
= f.error_messages
在模型中我有:
validates_presence_of :title
validates_presence_of :content
和我的控制器方法:
def publish
@post = Post.first(conditions:{_id:params[:post_id]})
@post.assign_attributes(params[:post])
@post.published=true
if @post.save
redirect_to "/"
else
@video = Video.new
render action: "new"
end
end