Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在RubyonRails中的数据库中创建新行时返回json_Javascript_Ruby On Rails_Json - Fatal编程技术网

Javascript 在RubyonRails中的数据库中创建新行时返回json

Javascript 在RubyonRails中的数据库中创建新行时返回json,javascript,ruby-on-rails,json,Javascript,Ruby On Rails,Json,大家好,我正在用rails制作一个带有后端的应用程序,我需要从ajax请求创建一个用户,服务器必须返回一个json对象并保存新用户 这是我的rails代码 class UsersController < ApplicationController def nuevo_usuario @u = User.new(params[:user]) @u.save respond_to do |format| format

大家好,我正在用rails制作一个带有后端的应用程序,我需要从ajax请求创建一个用户,服务器必须返回一个json对象并保存新用户

这是我的rails代码

class UsersController < ApplicationController

   def nuevo_usuario
      @u = User.new(params[:user])
      @u.save       
      respond_to do |format|
          format.json { render :json => @u }
      end
    end

end
服务器用这个来响应

Started POST "/users/nuevo_usuario.json" for 127.0.0.1 at 2013-06-14 10:17:22 -0500
Processing by UsersController#nuevo_usuario as JSON
  Parameters: {"user"=>{"user"=>"prueba", "mail"=>"prueba@gmail.com", "password"=>"[FILTERED]"}}
WARNING: Can't verify CSRF token authenticity
   (0.5ms)  BEGIN
  SQL (72.1ms)  INSERT INTO "users" ("created_at", "mail", "password", "updated_at", "user") VALUES ($1, $2, $3, $4, $5) RETURNING "id"  [["created_at", Fri, 14 Jun 2013 15:17:22    UTC +00:00], ["mail", "prueba@gmail.com"], ["password", "preuba"], ["updated_at", Fri, 14 Jun 2013 15:17:22 UTC +00:00], ["user", "prueba"]]
   (18.2ms)  COMMIT
Completed 200 OK in 395ms (Views: 1.1ms | ActiveRecord: 310.0ms)
我没有收到用rails发送的json对象


如果您需要更多信息,请告诉我,谢谢:)

您只查看日志文件吗?这不包括实际的响应正文。

添加“respond\u to:json”

所以它有点像:

class UsersController < ApplicationController
       respond_to :json

   def nuevo_usuario
      @u = User.new(params[:user])
      @u.save       
      respond_to do |format|
          format.json { render :json => @u.as_json }
      end
    end

end
class UsersController@u.as_json}
结束
结束
结束

我将我的代码上传到heroku,并用phongap编写了应用程序,效果很好,我认为问题在于跨域和跨浏览器ajax请求

我查找带有firebug的响应主体,结果是空的,我开始认为这是关于跨域ajax请求的问题,我在nuevo_usuario方法之前添加了respond_to:json,但没有起作用,我还尝试删除respond_to代码块,并用respond_with函数替换它,我在这里找到了这个函数,但不起作用:(对不起,我看到我输入了一个错误。
class UsersController < ApplicationController
       respond_to :json

   def nuevo_usuario
      @u = User.new(params[:user])
      @u.save       
      respond_to do |format|
          format.json { render :json => @u.as_json }
      end
    end

end