これは奇妙なことです。おそらく、私がルビーを初めて知ったからです。私は宝石を作った、それは動作し、すべての単体テストが動作しますが、私がirbで以下のことをすると、 "原料"メソッドを見つけることができません。irbがメソッドを認識しない
1.9.2-p290 :002 > require "tablecloth"
=> true
1.9.2-p290 :003 > tc = TableCloth.new "1 cup of sugar"
=> #<TableCloth:0x864a728>
1.9.2-p290 :004 > tc.ingredients
NoMethodError: undefined method `ingredients' for #<TableCloth:0x864a728>
from (irb):4
from /home/mikey/.rvm/rubies/ruby-1.9.2-p290/bin/irb:16:in `<main>'
1.9.2-p290 :005 >
全体の宝石はこちらです。
https://github.com/mikeyhogarth/tablecloth
明らかにこれは私がルビーに新しいことによるものです。実際に開発を妨げるわけではありませんが、irbがこのケースでそのメソッドを登録できないように見える理由を知りたいだけです!
おかげで、これを試してみましょう! –
'gem which tablecloth'でどのバージョンがロードされているのかを確認することができます。' gem install gem-open'を実行すると、 'gem open tablecloth'を実行して' $ EDITOR'にロードされたgemを開きます。実際に読み込まれた宝石を閲覧することができます。 –
私は最初に始めた時、以前は宝石を作りました。再構築は基本的にそれを修正しました。私は、私が "reqiure"が指定したファイルをreqilreと思っていた部分は、宝石を最初にチェックすることを認識していなかった –