Ruby on rails 接收json响应时不断出现“获取406不可接受错误”

Ruby on rails 接收json响应时不断出现“获取406不可接受错误”,ruby-on-rails,jquery,actioncontroller,Ruby On Rails,Jquery,Actioncontroller,我以前使用过jQuery远程函数,但在本例中遇到了问题 我有一个远程功能来检查电子邮件的唯一性,但现在我想检查用户密码,当他使用jQuery验证插件输入密码时(如果可能的话),但我经常遇到Firebug: 406 Not acceptable 以下是我的操作(此处有问题。编辑):-EDIT 从控制台:-编辑 以下是检查电子邮件唯一性的工作操作: def checkemail @user = User.find_by_email(params[:user][:email]) res

我以前使用过jQuery远程函数,但在本例中遇到了问题

我有一个远程功能来检查电子邮件的唯一性,但现在我想检查用户密码,当他使用jQuery验证插件输入密码时(如果可能的话),但我经常遇到Firebug:

 406 Not acceptable
以下是我的操作(此处有问题。编辑):-EDIT

从控制台:-编辑

以下是检查电子邮件唯一性的工作操作:

 def checkemail
  @user = User.find_by_email(params[:user][:email])
   respond_to do |format|
    format.json { render :json => !@user }
   end
end
我的jQuery验证与远程功能-编辑

checkuniqeness jQuery的工作示例:

    "user[email]": {
          required: true,
          email: true,
          remote: {
          url: "http://127.0.0.1:3000/checkemail"
          }

我的错误在哪里?

尝试将url更改为“”。@Frost,已尝试。不工作。在其他请求中,我没有使用json扩展。我将给你一个工作示例。在你的
检查过程中,这是你
呈现的打字错误:json=>@user
?因为之前您分配的是
user
局部变量,并且
user
已签入条件变量,所以这不是错误。这是一个有问题的输入错误。好的,但是如果你想在json中只返回true/false,更好的选择是
format.json{render:json=>(@user&&@user.valid_password?(params[:user][:password])}
,然后你就可以用这个@check标志去掉条件。
 def checkemail
  @user = User.find_by_email(params[:user][:email])
   respond_to do |format|
    format.json { render :json => !@user }
   end
end
     $("#edit_password").validate({
   rules: {

        "user[password]":{
            required: true,
            minlength: 6,
            remote: {
            url: "http://127.0.0.1:3000/checkpass",
            type: "get",
            data: {
              email: function() { return $("#user_email").val(); }
            }
        },
   ...
  })
    "user[email]": {
          required: true,
          email: true,
          remote: {
          url: "http://127.0.0.1:3000/checkemail"
          }