【发布时间】:2018-02-01 02:17:49
【问题描述】:
我正在尝试在我的 json 中实现一个计数器过滤器。当我访问 url api/v1/contacts?Results=2 [sic] 时,我只想从我的 json 中得到两个结果。
为此,我在控制器中创建了两个方法:一个从数据库获取信息并将渲染转换为 json 的索引,以及一个返回 json 被返回次数的方法。
class Api::V1::ContactsController < ApplicationController
before_action :results, only: [:index]
def index
@contacts = Contact.all
render json: {results: @contacts[0..@number_results]}
end
def results
if params[:results]
results = params[:results]["results"]
@number_results = results.to_i
else
@number_results = 3
end
end
end
不管results = 输入的值是多少,@number_results 的值都设置为0,所以每当我输入results = I 时,只会得到json 的第一个结果。如果我不在 url 中输入results =,它会将@number_results 设置为3,并在屏幕上显示四个结果。
谁能帮忙?
【问题讨论】:
-
什么版本的导轨?
-
您在寻找什么结果?你能给出预期的结果吗?我不清楚你想得到什么结果?如何从 url api / v1 / 联系人?你最终得到了结果 2?
-
@whodini9 rails 4
标签: ruby-on-rails json ruby rails-api