我需要从我的 Android 应用程序中调用我的控制器中的自定义方法。我有一个表名“lists”,其中有多个列,其中之一是“tableno”。我需要调用一个控制器方法,该方法将从数据库中的列表表中获取传递的表号的所有行,并将其作为 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 错误。我检查了服务器,它甚至没有读取我发送的参数。我是 Rails 新手,第一次写这样的东西,所以不确定我是否遗漏了什么。请指教。谢谢。