1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
spec_helper.rbの中でRSpec.configure を呼び出している場合、 以下のような警告が出てくることがあります。 1 ****************************************************** 2 DEPRECATION WARNING: you are using deprecated 3 behaviour that will be removed from RSpec 3. 4 5 You have set some configuration options after an 6 example group has already been defined. In RSpec 3, 7 this will not be allowed. All configuration should 8 happen befor
現状 1 % gem --version 2 1.3.6 3 4 % ./script/console 5 Loading development environment (Rails 2.2.2) 6 /usr/lib/ruby/gems/1.8/gems/rails-2.2.2/lib/rails/gem_dependency.rb:224:in `specification':NoMethodError: undefined method `version_requirements=' for #<Gem::Dependency:0xb7769604> rails 側での対応はなし rubygems 側は trunk で修正済 rubygems の新バージョンはなかなか出ず 対策 rubygems の trunk から最新版をインストールする (git じゃないのがダサイ)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Railsにおけるrestful_authenticationやMerbのビルトイン認証機構に比べると、Sinatraには「とりあえずこれを使っておけ」というような認証ライブラリが無いような気がします。強いて言えばRack::Auth::Basicかな。ちょっと機能不足のように感じます。 という事で、Sinatraで使える認証用ライブラリをリストアップ。 Rack::Auth::Basic Basic認証をする。 Rack::Auth::Digest 同様にDigest認証を行う。 Rack::Auth::OpenID OpenIDを使って認証。ruby-openidが必要。 Rack::Auth::OpenIDAuth 同
もともとSinatraではRack::Reloaderが上手く機能しないのでshotgunを使おうという流れだったのですが、諸般の事情でshotgunを使えない状況になったため、本腰を入れてRack::Reloaderを使えるようにする方法を調べました。 結論として、以下のようにすれば使えました。 config.ru 1 configure :development do 2 class Sinatra::Reloader < Rack::Reloader 3 def safe_load(file, mtime, stderr = $stderr) 4 ::Sinatra::Application.reset! 5 use_in_file_templates! file 6 stderr.puts "#{self.class}: reseting routes" 7 supe
Sinatraのインラインテンプレート(__END__以降に記述するテンプレート)が真っ青になって見難かったので、インラインテンプレートだけHamlとしてシンタックスハイライトするようにしてみました。 Before After 見やすいですね。 INSTALL Vimに sintax/haml.vim などをインストールした上で、以下のような設定を記述します。 .vim/ftdetect/ruby.vim 1 " Sinatra 2 au BufNewFile,BufRead *.rb set filetype=ruby | unlet b:current_syntax | syn include @rubyData syntax/haml.vim | syn region rubyDataHaml matchgroup=rubyData start="^__END__$" keepe
Snow LeopardでMySQLの64-bitバイナリのインストールまではメモなしでできてしまうけど、その後のmysql gemのインストールするためのおまじないはなかなか覚えられないからメモ書きする。 1 sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config なぜARCHFLAGSが必要かというと、gem installする時に32-bitと64-bit両方に対応するgemをビルドしようとするけど、mysqlのバイナリは64-bitのみ(つまりUniversalじゃない)からARCHFLAGSでx86_64を明示的に指定しないとビルドが失敗する。mysql gemは例外的なケースらしいから、tmtmさんに早く直してほしい
チームで開発しているときに「俺が関係しているテーブルのfixtureだけloadしたいんだぜー」というときに使う。使い方は調べたけど結局使わなかった。 rake db:fixtures:load fixtures=fixture1,fixture2,fixture3,・・・
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
YAMLの復習 YAMLのノードには3種類(kind)がある: Scalar (Unicodeの文字列として表現できるもの) Sequence (配列みたいなもの) Mapping (連想配列やHashみたいなもの) それぞれのkindはいくつかのstyleで出力できる。 Scalar: Plain (1行) 1 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Single Quote (1行) 1 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. ' Double Quote (1行) 1 "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " Block Literal (改行がそのまま
Gemを作るのが面倒になってきたので、githubから直接requireできたら楽になるかもしれないと思い、試してみました。 1 def git(uri, sha1, options = {}) 2 require "tmpdir" 3 basename = File.basename(uri) 4 outdir = File.join(Dir.tmpdir, basename, sha1) 5 unless File.exist?(outdir) 6 sh = proc{|command| IO.popen("#{command} 2>&1"){|io| io.read}} 7 sh["git clone #{uri} #{outdir}"] 8 sh["cd #{outdir}; git checkout #{sha1}"] 9 end 10 $:.unshift
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 RubyGemsを使うときに、たびたびGemのバージョンを指定する機会があります。 '=', '>=', '>' などの等号、不等号は、対応するRubyのオペレータと同じような機能なのでわかりやすいのですが、'~>'についてはどういう意味なのか若干わかりにくい感じです。一応マニュアルにはこんな感じに書かれています。 = Equals version != Not equal to version > Greater than version < Less than version >= Greater than or equal to <= Less than or equal to ~> Approximately greate
This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/175 Cometサーバ ShootingStar-1.0.3をリリースしました。 http://rubyforge.org/projects/shooting-star/ 以下のコマンドでインストールできます。 $ sudo gem install shooting_star 主な機能: - Cometサーバ - Cometクライアント(Rails Pluginとして) 本リリースは、ShootingStarの最初のパブリックリリースになります。 リポジトリのtrunkがそのままサンプルRailsアプリケーションになっています。 以下の手順でチェックアウト可能です。 $ svn co svn://rubyforge.org/var/s
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 前の記事のsnippets以外にも参考になった記事を集めておきます。 Scenario, Features, Steps サンプル シナリオやらいっぱい http://itsignals.cascadia.com.au/?p=30 (ちょっと)冗長だけど参考になるシナリオ http://github.com/aslakhellesoy/ba/blob/master/features/submit_proposal.feature インスタンスのページを表示する(the post page)step /posts/1のページを表示するようなScenarioはどうかけばいいのん?と思っていたら、こんな風に書けるようです。 http:/
Rails-2.3もRC2まで出ていて、今週か来週ぐらいには正式にリリースされるのでは、という情勢です。 ということで、Rails-2.3について手っ取り早く概要をつかむのに役立ったサイトを紹介します。 Rails2.3リリースノート訳 Ruby on Rails 2.3 リリースノート Rails 2.3のengine機能を調べてみた Rails 2.3のApplication Templateで煩わしい初期設定とはおさらばする! Nested AttributesとNested Model Formsを使って親子オブジェクトを一括で登録/変更するには Ruby on Rails 2.3 で I18N を使ってみた Rails 2.2.2のI18n機能による日本語化がイケてない6つの理由
Merbと違って、Railsには標準的なユーザ認証機構が用意されていないので、 昔から様々な認証用プラグインが乱立していました。 login_generator, acts_as_authenticated, restful_authentication, restful_openid_authentication and so on... 今回は、@a_matsudaさんや @lchinさんの勧めもあり、 比較的新しいClearanceという認証プラグインを試してみる事にしました。 http://github.com/thoughtbot/clearance/tree/master インストール方法 config/environment.rbに 1 config.gem "thoughtbot-clearance", 2 :lib => 'clearance', 3 :source
script/generate mailerでgenerateされるテストコードの@expectedはTMailのインスタンスらしく、生すぎなことがあります。 というわけで、お手軽にテストする方法をぐぐりました。 via http://sablog.com/archives/2006/03/14/how-to-test-actionmailer-in-ruby-on-rails 1 class SampleMailerTest < ActionMailer::TestCase 2 tests SampleMailer 3 4 def setup 5 # テスト時に配送したメールの配列を保存する。 6 ActionMailer::Base.deliveries = [] 7 end 8 9 def test_welcome 10 to = "satoko@s21g.com"
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く