Я пытаюсь получить activeresource (на Rails 3.2), работающий с API Freebase, и мне еще не удалась. Как я могу отлаживать рельсы, чтобы узнать, что происходит, и убедиться, что запрос хорошо сформирован?debugging activeresource
Я думаю, что суффикс .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
UPDATE:
Ok так что я нашел две вещи, идет не так ...
1) collection_path Я попытка вытеснения не работает вообще. Она по-прежнему записывает .json на каждый запрос. 2) https://www.googleapis.com:443/freebase/v1/freebases/search.json?query=nirvana
После этого освобождает базу ... любые идеи?
Я также попытался это исправить:
Remove .xml extension from ActiveResource request
Но это не удалить суффикс JSON либо.
UPDATE UPDATE:
Добавлена предложить обновление ниже, что дает правильный путь, но теперь я получаю
GET https://www.googleapis.com:443/freebase/v1/search/?query=monkey
--> 200 OK 2732 (693.3ms)
NoMethodError: undefined method `collect!' for #<Hash:0x007f9bde674900>
Является ли activesource мертвым объектом? Я вряд ли найду какую-либо документацию, а то, что существует, - 2 года. И вряд ли существуют какие-либо новые вопросы, связанные с этим? Должен ли я использовать что-то еще? – ere