Проблема с httparty в рубине на рельсах
Я пытаюсь использовать HTTParty в моем коде 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"
Я подозреваю, что что-то не так с моей средой?
Ответы
Ответ 1
Вам не нужно делать "include HTTParty" внутри Контроллера. Просто удалите это, и он должен работать. Я только что протестировал его, и это сработало для меня. Если это не сработает для вас, вы должны добавить камень в свою среду.
Обычно, если вы используете жемчужину внутри вашего приложения Rails, вы должны добавить следующее в environment.rb:
config.gem "httparty"
Теперь камень будет доступен в приложении, и вам не нужно добавлять "require" в контроллер. Кроме того, вам не нужно требовать RubyGems внутри контроллера.
Когда вы используете Rails 3, вам нужно поместить следующее внутри Gemfile:
gem "httparty"
Я надеюсь, что это сработает для вас.:)
Ответ 2
Проблема в том, что если вы загружаете новый камень, вам необходимо перезапустить сервер, даже если вы находитесь в разработке.
Ответ 3
У меня была такая же ошибка. Я попытался переместить require HTTParty
по всему, но нашел, все, что мне нужно было сделать, это перезапустить rails server
. В конце концов мне не нужно было "требовать HTTParty" и "включать" его. Это просто нужно было загрузить в рельсы.
Ответ 4
Входите в ту же проблему. Затем я переключился с Ruby 1.8.7 на Ruby 1.9.2 и все ошибки лакировали в воздухе.
(Да, сначала мне потребовалось несколько часов, чтобы придумать, что проблема с Ruby может быть проблемой. Настроил сервер secundairy, чтобы избежать возможных конфликтов с 2-мя рубинными версиями, и по прошествии многих часов я получил свой RoR вверх и работает. И первый тест с httparty (основанный на примере сверху) работал из коробки! Наконец, снова можно спать RESTfully: -)
Ответ 5
1) включают httpary в ваш gemfile
откройте файл gem, затем добавьте
gem 'httparty','YOUR VERSION NUMBER'
2) запустите bundle install
в командной строке файла приложения
3) перезапустите сервер