مشكلة بما في ذلك httparty في روبي على القضبان
-
30-09-2019 - |
سؤال
لقد كنت أحاول استخدام httparty في رمز القضبان الخاص بي
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 الخاص بك ، فيجب عليك إضافة ما يلي إلى البيئة. rb:
config.gem "httparty"
ستتوفر الجوهرة في التطبيق الآن ولا تحتاج إلى إضافة "متطلبات" داخل وحدة التحكم. أيضًا ، لا تحتاج إلى طلب Rubygems داخل وحدة التحكم.
عندما تستخدم Rails 3 ، تحتاج إلى وضع ما يلي داخل Gemfile:
gem "httparty"
أتمنى أن يناسبك. قون
نصائح أخرى
المشكلة هي ، إذا قمت بتحميل جوهرة جديدة ، فيجب عليك إعادة تشغيل الخادم حتى لو كنت قيد التطوير.
كان لدي نفس الخطأ. حاولت تحريك require HTTParty
في كل مكان ، ولكن وجدت ، كل ما كنت بحاجة إلى فعله هو إعادة تشغيل rails server
في النهاية ، لم أكن بحاجة إلى "طلب httparty" ولا ". يجب أن يتم تحميله فقط في القضبان.
1) تضمين httpary في gemfile الخاص بك
افتح ملف GEM الخاص بك ثم أضف
gem 'httparty','YOUR VERSION NUMBER'
2) الجري bundle install
في موجه الأوامر الخاص بك من ملف التطبيق
3) أعد تشغيل الخادم
ركض في نفس المشكلة. ثم انتقلت من Ruby 1.8.7 إلى Ruby 1.9.2 وجميع الأخطاء التي تم تنفيذها في الهواء الرقيق.
(نعم ، لقد استغرق الأمر أولاً بضع ساعات للتوصل إلى احتمال أن يكون إصدار Ruby هو المشكلة. قامت بتكوين خادم Secundairy لتجنب النزاعات المحتملة مع نسختين من روبي ، وبعد الطريق إلى عدة ساعات ، حصلت والجري. والاختبار الأول مع httparty (استنادا إلى المثال في الأعلى) عملت خارج الصندوق! وأخيرا يمكن أن تنام مرة أخرى :-)