отладка активного ресурса

Я пытаюсь заставить активный ресурс (на Rails 3.2) работать с API Freebase, и пока мне не очень повезло. Как я могу отладить рельсы, чтобы увидеть, что происходит, и убедиться, что запрос правильно сформирован?

Я думаю, что суффикс .json вызывает сбой, но я не знаю, как проверить, что происходит?

Ошибка:

ActiveResource::ResourceNotFound: Failed.  Response code = 404.  Response message = Not Found.

Код:

class Freebase < ActiveResource::Base
  class << self # also tried without this, same result
    def element_path(id, prefix_options = {}, query_options = nil)
      prefix_options, query_options = split_options(prefix_options) if query_options.nil?
      "#{prefix(prefix_options)}#{collection_name}/#{id}#{query_string(query_options)}"
    end

    def collection_path(prefix_options = {}, query_options = nil)
      prefix_options, query_options = split_options(prefix_options) if query_options.nil?
      "#{prefix(prefix_options)}#{collection_name}#{query_string(query_options)}"
    end
  end


  self.site = "https://www.googleapis.com/freebase/v1/"
  self.format = :json

  #https://www.googleapis.com/freebase/v1/search?query=nirvana&indent=true

  #Freebase.get('search', :query => 'nirvana')



end

ОБНОВЛЕНИЕ:

Итак, я обнаружил, что две вещи идут не так...

1) collection_path, который я пытаюсь заменить, вообще не работает.. он по-прежнему добавляет .json к каждому запросу. 2) https://www.googleapis.com:443/freebase/v1/freebases/search.json?query=nirvana После этого он прикрепляет freebase ... есть идеи?

Я также попробовал это исправление:

Удалить расширение .xml из запроса ActiveResource

Но это также не удалило суффикс JSON.

ОБНОВЛЕНИЕ ОБНОВЛЕНИЕ:

Добавлено предлагаемое обновление ниже, которое дает правильный ПУТЬ, но теперь я получаю

GET https://www.googleapis.com:443/freebase/v1/search/?query=monkey
--> 200 OK 2732 (693.3ms)
NoMethodError: undefined method `collect!' for #

6
задан Community 23 May 2017 в 12:02
поделиться