用extjs做的界面的服务器端验证

本文介绍Rails中如何使用ActiveRecord进行验证,并通过JSON反馈验证错误信息到前端。具体包括两个界面元素的设置,以及服务器端如何捕捉这些错误并正确地返回给客户端。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 系统需要服务器端验证,例如验证编码的唯一性等等

rails中ActiveRecord就自带了很多验证方法

例如以下这两个界面元素

{
    fieldLabel: '编码',
    name: 'employer[code]',
    value:'<%= @employer.code %>',
    allowBlank:false
},{
    fieldLabel: '姓名',
    name: 'employer[name]',
    value:'<%= @employer.name %>',
    allowBlank:false
}

 保存的时候需要根据服务器端返回来数据标注哪个控件验证错误,代码如下:

  def create
    @employer = Employer.new(params[:employer])
    result = Hash.new
    if @employer.save
      result[:success]=true
    else
      result[:success]=false
      result[:errors] ={}
      @employer.errors.each{|k,v| result[:errors]["employer[#{k}]"] = v }
      result[:message]="错误,不能保存"        
    end
    render :text => result.to_json(),:layout=>false
  end

要点:返回的json中有个errors属性,里面的key是控件的name属性,value是错误提示信息

extjs服务器端验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值