2012-06-13 124 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