我试图将来自ruby模型的验证错误添加到JQGrid上创建的记录表单。我们这样做吗?
执行self.errors.add(:field,“Invalid”)不起作用..
好的,让我提一些代码让问题更清楚......
jQuery的(文件)。就绪(函数(){
var mygrid = jQuery(“#rulesconfigs”)。jqGrid({
url:'/ rulesconfigs?q = 1',
editurl:'/ rulesconfigs / post_data',
数据类型:“json”,
colNames:['SQL'],
colModel:[{
名称:'sqlstr',
index:'sqlstr',
宽度:100,
可编辑的:真实的
},
...
{
closeAfterEdit:true,
afterSubmit:function(r,data){
返回true;
(r,数据,'添加');
}
}
}
class SqlClauseValidator< ::加载ActiveModel
EachValidator
def validate_each(记录,属性,值)
...
开始
ActiveRecord :: Base.transaction做
users_affected = ActiveRecord :: Base.connection.select_value(sqlstr,'validate')
返回真实的
结束
救援Exception => EXC
record.errors.add(:sqlstr,“SQL Invalid。”)
提出ActiveRecord :: RecordInvalid.new(记录)
#我想要的是SQL无法放在ADD RECORD FORM上
归还假
结束
归还假
结束
结束
类rc<的ActiveRecord :: Base的
包括ActiveModel :: Validations
attr_accessible :: sqlstr
验证:sqlstr,:sql_clause => true#,:message => “SQL invald!”
结束