2012-03-14 83 views
1

我试图做一个的Rails + AJAX调用验证来检查现场的唯一性,通过抓取后端数据库并返回相应的消息根据结果​​。验证领域的独特性3

我在Rails 3.0.11上。

您对什么可能是解决这个问题的最佳方式的善意投入将有实际的帮助。

是否有我可以使用的红宝石gem/js插件/ jquery插件?

实现相同的任何博客链接也将得心应手..

谢谢。

回答

2

为什么不像在常规页面请求中那样创建模型验证,并通过控制器中的JSON发回验证消息?举例来说,如果你要防止从节约不唯一的电子邮件“接触”,在contact.rb添加

validates :email, :uniqueness => true 

,并在控制器的创建方法,你可以不喜欢Rails的脚手架发电机会:

# POST /contacts 
# POST /contacts.json 
def create 
    @contact = Contact.new(params[:contact]) 

    respond_to do |format| 
    if @contact.save 
     format.html { redirect_to @contact, notice: 'Contact was successfully created.' } 
     format.json { render json: @contact, status: :created, location: @contact } 
    else 
     format.html { render action: "new" } 
     format.json { render json: @contact.errors, status: :unprocessable_entity } 
    end 
    end 
end 

然后,您的JavaScript会测试status并作出相应的响应。

(注:这是Rails的3.2脚手架发生器产生,3.0还是没format.xml我想我不认为还有比这改变其他任何重大的区别。)

+0

谢谢您的回答.. :) – boddhisattva 2012-03-15 16:49:43