Android アプリからコントローラーでカスタム メソッドを呼び出す必要があります。複数の列を持つテーブル名「lists」があり、そのうちの 1 つは「tableno」です。渡されたテーブル番号の DB のリスト テーブルからすべての行をフェッチし、それを JSON として返すコントローラー メソッドを呼び出す必要があります。私のアプリでは、JSON を読み取ります。以下のように、リストコントローラーでメソッドを定義しました。
def tableOrder
@list = List.where(:tableno => params[:tableno])
respond_to do |format|
format.json { render json: @list }
end
end
私が与えたルートファイルで
resources :lists do
member do
get 'tableOrder'
end
end
Android アプリから実行するために使用している URL はlists/tableOrder
withget
メソッドです。Android アプリから送信するパラメーターは JSONObject:jsonObject.put("tableno", tableNo);
です。ここのtablenoは、リストテーブルの実際の列名です。
問題は、クエリが実行されず、Missing template エラーが発生することです。サーバーを確認しましたが、送信したパラメーターを読み取っていません。私はレールに不慣れで、そのようなことを初めて書いているので、何かが足りないかどうかわかりません。お知らせ下さい。ありがとう。