لا يمكن العثور على الأحجار الكريمة في IRB: "NameError: جوهرة ثابت غير مالية من (IRB)"

StackOverflow https://stackoverflow.com/questions/1689725

سؤال

عندما أقوم بتشغيل تطبيق Rails، فهذا يجد جميع الأحجار الكريمة المثبتة بشكل صحيح.

هذه هي المرة الأولى التي أحاول فيها الاتصال ببعض الأحجار الكريمة من داخل IRB ولم أجدها.

blocke:~$ irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'rails'
LoadError: no such file to load -- rails
 from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
 from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
 from (irb):2
irb(main):003:0> 

عندما أقوم بتشغيل "GEM English" هذا ما أحصل عليه:

blocke:~$ gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [i486-linux]
  - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: /usr/bin/ruby1.8
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-linux
  - GEM PATHS:
     - /usr/lib/ruby/gems/1.8
     - /home/blocke/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - "gem" => "--no-ri --no-rdoc"
     - :sources => ["http://gemcutter.org", "http://gems.rubyforge.org/", "http://gems.github.com"]
  - REMOTE SOURCES:
     - http://gemcutter.org
     - http://gems.rubyforge.org/
     - http://gems.github.com

وفقا ل IRB، فإن مسار GEM هو نفسه إلا في الترتيب العكسي:

blocke:~$ irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> Gem.path
=> ["/home/blocke/.gem/ruby/1.8", "/usr/lib/ruby/gems/1.8"]
هل كانت مفيدة؟

المحلول

لا يعمل لأنه لا يمكن العثور على ملف "Rails.rb" (أعتقد أنه لا يوجد مثل هذا الملف في جهرة القضبان).

يمكنك إما أن تتطلب مكونا محددا للقضبان، مثل "activerecord":

require 'rubygems'
require 'activerecord'

أو استخدم الأمر "جوهرة"، مثل هذا:

require 'rubygems'
gem 'rails'
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top