1. 程式人生 > >rails4 ajax實現驗證使用者存在否

rails4 ajax實現驗證使用者存在否

假設使用者表名是 users  ,使用者名稱 欄位 是  name

1、需為users對應的建一個controller,同時定義方法checkname

app\controllers\users_controller.rb

class UsersController < ApplicationController
  def checkname
    if User.where(name: params[:name]).count == 0
      render :nothing => true,:status => 200
    else
      render :nothing => true,:status => 409
    end
    return
  end
end

2、同時要為checkname方法設定路由 ,修改routes.rb,新增

resources :users do
    collection do
      get 'checkname'
    end
  end

3、app\views\register\index.html.erb中寫這麼一句

<%= f.text_field :name,required: true,class:"txt1_bg","data-validate"=> '/users/checkname' %><div id="divName_info"></div>

4、app\assets\javascripts\register.js.coffee

$ ->
  $("[data-validate]").blur ->
    $this = $(this)
    $.get($this.data("validate"),
      name: $this.val()
    ).success(->
      $("#divName_info").empty()
      $("#divName_info").append ""+"can"
      return
    ).error ->
      $("#divName_info").empty()
      $("#divName_info").append ""+"exist"
      return
    return
  return
5、除錯

討論