タグ付けされた質問 「ruby」

Rubyは、マルチプラットフォームのオープンソースの動的オブジェクト指向インタープリタ言語であり、1995年に松本幸宏(Matz)によって作成されました。[ruby]タグは、Ruby言語に関連する質問(構文やライブラリなど)を対象としています。Ruby on Railsの質問は[ruby-on-rails]でタグ付けする必要があります。

7
RubyでFileクラスを使用してディレクトリが存在しない場合、どうすればディレクトリを作成できますか?
私はこの声明を持っています: File.open(some_path, 'w+') { |f| f.write(builder.to_html) } どこ some_path = "somedir/some_subdir/some-file.html" 私がしたいことは、パスに呼び出されたディレクトリsomedirまたはsome_subdirその両方が存在しない場合、自動的に作成することです。 どうやってやるの?
121 ruby 

10
テスト環境でRailsコンソールを実行してtest_helper.rbをロードする方法は?
背景:Thoughtbotの「Factory Girl」gemで問題が発生しています。これは、ユニットやその他のテストで使用するオブジェクトの作成に使用されます。コンソールに行って、何が起こっているのかを確認するために、さまざまなFactory Girl呼び出しを実行したいと思います。たとえば、私はそこに行きたいです... >> Factory(:user).inspect さまざまな環境でコンソールを実行できることを知っています... $スクリプト/コンソールRAILS_ENV = test しかし、その場合、Factoryクラスは利用できません。test_helper.rbロードされていないようです。 へrequireの絶対パスを含むさまざまな呼び出しを試しましたtest_helper.rbが、次のように失敗します。 $ script/console RAILS_ENV=test >> require '/Users/ethan/project/contactdb/test/test_helper.rb' Errno::ENOENT: No such file or directory - /Users/ethan/project/contactdb/config/environments/RAILS_ENV=test.rb Grr。ああ。

4
Rubyの文字列名からクラスインスタンスを作成するにはどうすればよいですか?
クラスの名前があり、そのクラスのインスタンスを作成して、そのクラスのスキーマに存在する各rails属性をループできるようにしたいと思います。 どうすればいいですか? チェックしたいクラスの文字列として名前を持っています 私ができるようにクラスインスタンスをインスタンス化する必要があると思います その属性をループして印刷します。


17
Rubyで抽象クラスを実装する方法は?
Rubyには抽象クラスの概念がないことは知っています。しかし、それを実装する必要がある場合は、どうすればよいですか?私は何かを試しました... class A def self.new raise 'Doh! You are trying to write Java in Ruby!' end end class B < A ... ... end しかし、Bをインスタンス化しようとするとA.new、例外が発生する内部で呼び出されます。 また、モジュールはインスタンス化できませんが、継承することもできません。新しいメソッドをプライベートにすることもできません。ポインタはありますか?

6
Rubyが文字列をキャプチャされた正規表現パターンで置き換える
これをRubyに変換するのに問題があります。 以下は、私がやりたいことを正確に実行するJavaScriptの一部です。 function get_code(str){ return str.replace(/^(Z_.*): .*/,"$1")​​​​​​​​​​​​​​​​​​​​​​​​​​​; } 私はgsub、sub、およびreplaceを試しましたが、期待どおりの動作をするようには見えません。 これが私が試したことの例です: "Z_sdsd: sdsd".gsub(/^(Z_.*): .*/) { |capture| capture } "Z_sdsd: sdsd".gsub(/^(Z_.*): .*/, "$1") "Z_sdsd: sdsd".gsub(/^(Z_.*): .*/, "#{$1}") "Z_sdsd: sdsd".gsub(/^(Z_.*): .*/, "\1") "Z_sdsd: sdsd".gsub(/(.).*/) { |capture| capture }
121 ruby  regex  replace 



5
Ubuntu 14.04にRuby 2.1.4をインストールする方法
Ubuntuに最新のRubyをインストールする方法がわかりません。 まず、デフォルトのRuby 1.9.3をインストールしました。 sudo apt-get install ruby それから私は2.0バージョンをインストールしてみました sudo apt-get install ruby2.0 Rubyのバージョンはまだ「ruby 1.9.3p484(2013-11-22リビジョン43786)[x86_64-linux])です 私は何をすべきか?

16
Railsのhtml.erbテンプレートでコメントをブロックする
Rubyコードと混合したhtmlをどのようにコメントアウトしますか? some text <% ... %> more text <%= ... %> something else <% ... %> jspでそれは本当にシンプルです:<%-- ... --%>、しかし私はレールで任意の簡潔なオプションを見つけることができません。 単純なhtmlコメント<!-- ... -->は機能しません。rubyコードは引き続き実行され、エラーが発生します。 if falseHTMLコメントで使用するオプションがありますが、IDEがサポートしていないことは言うまでもなく、非常に冗長です。 純粋なルビーから来るオプションもありますが、これは驚くほどうまくいきます。 <% =begin %> ... html and ruby code goes here <% =end %> それは冗長で奇妙に見え、私が知っているルビIDEのどれもそれをサポートしていないことを除いて、一般的には問題ありません(そうです、私は1回のキーストロークでコメント/コメントアウトしたいです)。 私は好奇心旺盛ですが、これをレールで行うことの「公式」はありますか? ありがとう!
119 ruby-on-rails  ruby  erb 


2
各ループのハッシュでインデックスにアクセスできますか?
私はおそらく明らかなものを欠いているでしょうが、各ループのハッシュ内の反復のインデックス/カウントにアクセスする方法はありますか? hash = {'three' => 'one', 'four' => 'two', 'one' => 'three'} hash.each { |key, value| # any way to know which iteration this is # (without having to create a count variable)? }
119 ruby  enumerable 

7
RSpecと時間を比較する際の問題
Ruby on Rails 4とrspec-rails gem 2.14を使用しています。私のオブジェクトの場合updated_at、コントローラーアクションの実行後に現在の時間とオブジェクト属性を比較したいのですが、スペックが渡されないため困っています。つまり、以下はスペックコードです。 it "updates updated_at attribute" do Timecop.freeze patch :update @article.reload expect(@article.updated_at).to eq(Time.now) end 上記の仕様を実行すると、次のエラーが発生します。 Failure/Error: expect(@article.updated_at).to eq(Time.now) expected: 2013-12-05 14:42:20 UTC got: Thu, 05 Dec 2013 08:42:20 CST -06:00 (compared using ==) スペックを合格させるにはどうすればよいですか? 注:私は以下も試しました(utc追加に注意してください): it "updates updated_at attribute" do Timecop.freeze patch :update @article.reload expect(@article.updated_at.utc).to eq(Time.now) …


4
ハッシュの配列をハッシュの値でソートするにはどうすればよいですか?
このRubyコードは私が期待するように動作していません: # create an array of hashes sort_me = [] sort_me.push({"value"=>1, "name"=>"a"}) sort_me.push({"value"=>3, "name"=>"c"}) sort_me.push({"value"=>2, "name"=>"b"}) # sort sort_me.sort_by { |k| k["value"]} # same order as above! puts sort_me ハッシュの配列をキー「値」でソートしようとしていますが、ソートされずに出力されます。
119 ruby  arrays  sorting  hash 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.