Беда, в том числе httparty в Ruby на рельсах
-
30-09-2019 - |
Вопрос
Я пытался использовать Happarty в моем коде Rails
sudo gem install httparty
Из командной строки я теперь могу успешно сделать
httparty "http://twitter.com/statuses/public_timeline.json"
Когда я попробую это в моем приложении Rails
require 'rubygems'
require 'httparty'
class FooController < ApplicationController
include HTTParty
def bar
blah = HTTParty.get("http://twitter.com/statuses/public_timeline.json")
end
end
Я получаю сообщение об ошибке «Нет такого файла для загрузки - httparty»
Я подозреваю, что есть что-то не так с моей средой?
Решение
Вам не нужно делать 'включать httparty' внутри контроллера. Просто удалите это, и он должен работать. Я только что проверил это, и это сработало для меня. Если это не работает для вас, вы должны добавить драгоценный камень в вашу среду.
Обычно, если вы используете драгоценный камень в приложении Rails, вы должны добавить следующее в среду.
config.gem "httparty"
GEM будет доступна в приложении сейчас, и вам не нужно добавлять «требовать» внутри контроллера. Кроме того, вам не нужно требовать Rubygems внутри контроллера.
Когда вы используете Rails 3, вам нужно поставить следующее внутри GemFile:
gem "httparty"
Я надеюсь, что это работает для вас. :)
Другие советы
Проблема в том, что если вы загружаете новый драгоценный камень, вы должны перезапустить сервер, даже если вы находитесь в разработке.
У меня была такая же ошибка. Я пытался переместить require HTTParty
все, но нашел, все, что мне нужно было сделать, это перезапустить rails server
В конце концов мне не нужно было «требовать httparty», ни 'включать его. Это просто нужно было загружать в рельсы.
1) Включите HTATHARY в вашем драгоценном файле
Откройте свой файл Gem, затем добавьте
gem 'httparty','YOUR VERSION NUMBER'
2) пробег bundle install
В вашей командной строке файла приложения
3) Перезагрузите сервер
Побежал в ту же проблему. Затем я перешел с Ruby 1.8.7 в Ruby 1.9.2, и все ошибки лакируются на тонкий воздух.
(Да, сначала потребовалось несколько часов, чтобы придумать возможность того, что версия Ruby может быть проблемой. Настроил сервер Secundiry, чтобы избежать возможных конфликтов с 2 версиями Ruby, а после пути к многим часам у меня есть мой рокс и работает. И первый тест с httparty (на основе примера на вершине) сработал из коробки! Наконец-то может спать спокойно снова :-)