У меня есть функция с именем value
, которая возвращает этот массив ниже:
[1893, 1724, 257344, 353491, 301337, 305470, 348, 264660, 76341, 68726]
Однако для большей ясности, вот value function
, который возвращает value array
выше: это модуль, подобный ListInfoService
ниже, и имеет 4 аргумента, которые являются аргументами, предоставленными в методе значений ниже ValueSearchService::ValueSearch.new(params[:one], params['two'] = 1_000_000, params[:three], params[:four]).values
def value
params = set_params_if_not_added
value_search = ValueSearchService::ValueSearch.new(
params[:one],
params['two'] = 1_000_000,
params[:three],
params[:four]
).values
value_search['data']
end
У меня также есть функция, в которой аргумент ids
должен принимать результат значения (то есть числа, разделенные запятыми):
module ListInfoService
class ListInfo
include HTTParty
base_uri 'localhost:7000'
def initialize(ids, limit, offset)
@options = { query: { ids: ids, some_params: some_params, another_params: another_params } }
end
def movies
self.class.get('/list', @options)
end
end
end
URL, который я интерпретировал, чтобы заставить модуль работать выше:
localhost:7000/list?ids=2,3,6&some_params=5&another_params=0
Но когда я вызываю функцию, опуская результат value
в вызов функции ниже, я получаю args.ids.split is not a function
ошибку:
list_info = ListInfoService::ListInfo.new(
value,
params[:some_params],
params[:another_params]
).movies
render json: list_info
Итак, как мне убедиться, что мой аргумент ids
принимает список чисел через запятую?
Примечание : использую HTTParty, Rails5.1, Ruby 2.6
Я думаю, что проблема в массиве value
, который я поставил внутри ListInfoService::ListInfo
, который ищет API. Если я, возможно, смогу изменить способ вызова API в модуле или найти способ предоставления необходимого списка идентификаторов, разделенных запятыми, это сработает.