Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 RubyonRails-抑制错误消息_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 3 RubyonRails-抑制错误消息

Ruby on rails 3 RubyonRails-抑制错误消息,ruby-on-rails-3,Ruby On Rails 3,我正在使用Rails3和AJAX,并且有一个父对象,它是通过和AJAX请求创建的。此父项与子项一起发送并保存所有子项。但是,如果子级出现错误,Rails将停止请求。有没有办法让Rails忽略这一点?我知道正确的做法是在发送请求的Javascript中找到问题并解决它。但是,为了学习,有没有办法告诉Rails某些错误可能是可忽略的?您正在寻找异常处理 begin #code that may contain errors rescue #what to do if an error is

我正在使用Rails3和AJAX,并且有一个父对象,它是通过和AJAX请求创建的。此父项与子项一起发送并保存所有子项。但是,如果子级出现错误,Rails将停止请求。有没有办法让Rails忽略这一点?我知道正确的做法是在发送请求的Javascript中找到问题并解决它。但是,为了学习,有没有办法告诉Rails某些错误可能是可忽略的?

您正在寻找异常处理

begin
  #code that may contain errors
rescue
  #what to do if an error is encountered
end

要保存而不验证使用,请执行以下操作:

@parent.save(:validate => false)
另外,不要忘记,如果需要,您可以创建条件验证规则。例如,添加一个虚拟属性(一个未持久化到数据库的实例变量),该属性可通过bare_bones?访问?。然后修改验证器,如下所示:

validates_presence_of :nickname, :unless => "bare_bones?"
然后,在控制器中执行如下操作:

@parent = Parent.new params[:parent]
@parent.bare_bones = true
@parent.save()

希望这能有所帮助。

好吧,这并不完全是一个错误。这是一次失败的验证。当然,我期待的是失败。但是,忽视失败,只是不采取行动。继续做其他事情。在这种情况下,继续保存其他可能可以通过的子项和父模型。