2012-06-13 130 views
4

我需要创建一个Rails应用程序,它将接受来自移动客户端的Post请求并存储随请求一起发送的信息。我将使用Ajax发送请求。 纬度(浮动) 经度(浮动) 时间戳(javascript日期对象)Ruby on Rails接受发布请求

我已经创建了使用Rails的相应字段的数据模型生成的资源, 但我:请求与下面的参数发送不知道如何让Rails接受Post请求并创建一个包含必要信息的对象。我应该如何编辑Rails生成的代码才能实现此目的?

谢谢,我很抱歉提出这样一个基本问题。

回答

5

很难说这个问题你对Rails有多少了解,但这是所有基本的Rails功能,所以你需要从头开始......如果你做了这两个教程,你将能够上手:

  1. 了解Rails Controllers
  2. 了解Rails Routing

然后给它一个镜头创建一个新的控制器和一些路线符合您要查找的内容,那么你可以使用一个Mozilla是像R的插件ESTClient用一些虚拟数据测试你的路由。

但严重的是,这里的第一步是“Learn Rails”。 :)

+0

我的问题是与控制器。我一直在尝试将参数传递给Report controller的create方法。据我了解,在地址栏中输入“http:// localhost:3000/reports/create/1?latitude = 4”应该创建一个新的报告,其纬度字段为4.然而,报告对象保存到数据库只有空的字段。 – jac

+0

然后我有另一个教程为你:http://edgeguides.rubyonrails.org/debugging_rails_applications.html你应该在调试模式下运行你的服务器并注意输出,然后你可以将你的params转储到控制台并开始调试 - 首先测试你的纬度参数是否进入控制器。 – MBHNYC

+0

好的,所以我最终得到了Report#create来接受URL中指定的参数。以前的代码是@ report = Report.new(params [:report])。我必须明确列出参数才能接受它们@ report = Report.new({latitude:params [:latitude]})。我有什么理由不得不这样做? – jac