アーカイブ

‘Rails’ カテゴリーのアーカイブ

本を書きました。 このエントリーを含むはてなブックマーク はてなブックマーク - 本を書きました。

2010 年 4 月 23 日 コメントはありません
Ruby on Rails携帯サイト開発技法 Ruby on Rails携帯サイト開発技法
ソフトバンククリエイティブ(2010-04-30)
ソフトバンククリエイティブ
新品価格:¥ 2,940
ASIN:4797358785

自分はjpmobileを使ってアプリを作る章を担当しました。書店で見かけたら手にとって頂けるとありがたいです。

カテゴリー: Rails, Ruby タグ:

autotest-tmuxできてました。 このエントリーを含むはてなブックマーク はてなブックマーク - autotest-tmuxできてました。

2010 年 4 月 12 日 コメントはありません

screen+vimで縦分割したときに矢印(→)やら米印(※)やら三角(▽)やらを含んだファイルで桁ずれを起こしていたのですが、対策が見つからずそのファイルは単独タブで開くという後ろ向きな手段で回避して使っていました。
しかし先日ついに我慢できなくなって、前から気になっていたtmuxを試してみたところ見事にこの現象が起きず、これを機に乗り換えることにしました。複数コンソールを開くだけ、というきわめて基本的な機能しか使っていなかったため、少し設定ファイルを書くだけでまったく同じように使えています。(参考として.tmux.confを貼っておきます。)

bind-key BSpace previous-window
bind-key Space next-window
set -g default-terminal screen-256color
set -g prefix C-z
set -g status-bg colour7
set -g status-fg black
setw -g window-status-current-format " #I:#W "
setw -g window-status-current-bg black
setw -g window-status-current-fg white
setw -g window-status-format " #I:#W "

さて、ということで必要に迫られてautotest_screenのtmux版であるautotest-tmuxを作りました。
screen版の区切りをアンダースコアにしたのが、githubに置かれたgemの命名規則にかち合うのを回避という理由だったため、いまはその心配がないであろうという判断でtmux版はハイフン区切りにしました。
同じような環境にあるかた、お試しください。

カテゴリー: Rails, Ruby タグ:

Apacheは知らないhttpステータスは返さない。 このエントリーを含むはてなブックマーク はてなブックマーク - Apacheは知らないhttpステータスは返さない。

2010 年 2 月 11 日 コメントはありません

正しくは、500を返す。

render :nothing => true, :status => 450

なんてことをしていて、Mongrelの開発環境だとちゃんと450が返ってくるのにApache+Passengerの検証環境だと500が返ってきていた。
そこで原因を調べたところ、返す可能性のあるステータスコードはすべて定義されていて、それ以外は500で返している。(※ソースは後述)

で、なんでこんなことをしようとしているのか。Flashのアップローダを作ってFileReference#upload()でアップロードしているのだけれど、こいつが結果をHTTPステータスでしか受け取れない。だから、結果のメッセージをサーバから返してそれを表示する、てこともできない。
アップロード自体が成功したか否かを知るには200かそれ以外か、くらいで十分なんだけれど、アプリ要件(たとえば、アップロードが終わってからファイルを受け付けられない状況になってただとか、ファイルの中身を見て判断しなきゃいけないだとか)での結果を返すには、これでは足りない。
結局、Apacheのソースコメントでunusedとなっていた418~421に意味を持たせ、そこを使って対応しました。層を混同していて気持ちがいいものではないのだけれど、影響範囲は広くなく、なんらかのフラグを立てて別リクエスト、のコスト増を考えるといいだろうとの判断。もしなにかいい方法があったら教えてください。

以下、Apacheソースの該当部分。
続きを読む…

カテゴリー: Apache, Rails タグ:

rake notesが出してくれる範囲。 このエントリーを含むはてなブックマーク はてなブックマーク - rake notesが出してくれる範囲。

2010 年 1 月 19 日 コメントはありません

configの下も出したかったので調べた。

rails-2.3.5/lib/source_annotation_extractor.rb

 48   # Returns a hash that maps filenames under +dirs+ (recursively) to arrays
 49   # with their annotations. Only files with annotations are included, and only
 50   # those with extension +.builder+, +.rb+, +.rxml+, +.rjs+, +.rhtml+, and +.erb+
 51   # are taken into account.
 52   def find(dirs=%w(app lib test))
 53     dirs.inject({}) { |h, dir| h.update(find_in(dir)) }
 54   end

ここね。

カテゴリー: Rails, Ruby タグ:

rake db:seedっての。 このエントリーを含むはてなブックマーク はてなブックマーク - rake db:seedっての。

2009 年 10 月 16 日 コメントはありません

rake db:seed – p0t

Rails 2.3.4から入ったrake db:seed。所謂マスターデータを入れる処理はmigrationじゃなくてこっちにしようという話。

もう悩まない!

カテゴリー: Rails, Ruby タグ:

autotest_screenをリリースしました。 このエントリーを含むはてなブックマーク はてなブックマーク - autotest_screenをリリースしました。

2009 年 3 月 19 日 コメント 4 件

autotest/screenの切り出しを引き受けてから早2週間、やっとのことでリリースしました。

RubyForge: autotest_screen: Project Info

Autotest::Screen shows autotest/autospec progress on GNU Screen’s status line.

これからは

gem install autotest_screen

でどうぞ。

RubyForgeにプロジェクト作ってファイル上げてって流れ、komagataさんの動画がリアルでおすすめ。

カテゴリー: Rails タグ:

ZenTest 4.0.0でautotest/screenを。 このエントリーを含むはてなブックマーク はてなブックマーク - ZenTest 4.0.0でautotest/screenを。

RubyForge: zentest-4.0.0-released

ZenTest version 4.0.0 has been released!

先日パッチを投げてみて、そのあとこんなやりとり(超訳:Ryan「おれscreen使ってなくて、これからも使う予定ないから、メンテやってくれないかな。」オレ「わかった、やるよ。」)があって、autotest/screenを担当することになったのですが、その直後にリリースされた4.0.0ではもうautotest/screenが削除されております。(こんなタイミングだったとはっ! 8O
そのためZenTest 4.0.0にアップデートされた方はautotest/screenが無い状態になっていると思いますので、お困りの方のために暫定処置としてソースを張っておきます。

こいつを ZenTest-4.0.0/lib/autotest/screen.rb として置くか、$HOME/.autotest にまるっと貼り付けてやればOKです。
正式対応はへっぽこ英語でやりとりしつつ鋭意作業中ですので、いましばらくお待ちください。

カテゴリー: Rails, Ruby, ZenTest タグ:

autotestにhookを。 このエントリーを含むはてなブックマーク はてなブックマーク - autotestにhookを。

2009 年 2 月 27 日 コメントはありません
  1. シンタックスエラーやらが原因で、気がついたらscreenの裏で静かにautotestが落ちてた。
  2. なんてことを繰り返してた。
  3. そのためのhookを追加したらいいんじゃないかと思いつきやってみた。
  4. 去年いじったautotest/screenがそのままになっていたのに気がついた。
  5. この際一緒に投げようとした。
  6. 他の人が先に投げたパッチに被っていることに気がついた。
  7. どうしようか考えた。
  8. けれどとりあえず気にしないで投げた。←いまココ

[ref.] Autotest::Screenのhookを整理してみた。
[ref.] RubyForge: ZenTest – Ruby Unit Testing Utility:

カテゴリー: Rails, Ruby タグ:

MerbがMerbが。 このエントリーを含むはてなブックマーク はてなブックマーク - MerbがMerbが。

2008 年 12 月 25 日 コメントはありません

Riding Rails: Merb gets merged into Rails 3!

It’s christmas, baby, and do we have a present for you. We’re ending the bickering between Merb and Rails with a this bombshell: Merb is being merged into Rails 3!

インストールするといっぱい依存gemが入るというくらいの知識しかなく(えぇー!)、触ってみなきゃと思いつついますぐには必要ないしという後ろ向きな理由でそのままにしていたMerbがRails3にマージされるそうです。

ふつうにアプリを作るならきっと現時点でもう十分で、フレームワークは道具でまた学習コストがかかるのは云々て意見も正しいと思うけど、ここをこう変えたんだとかこういう機能がついたんだというのをみるたびに、そんな方法があるんだ!とかそうやってるのか!とか感じるのが単純におもしろい。

包丁を研いでうわー切れるーだとか、ドリルに油さして穴開け軽々ーだとか、そういう感覚と同じなんじゃないかな。
いい道具を使うことはそれ自体が楽しみで、それをメンテナンスするのも楽しいことだと思う。

カテゴリー: Rails タグ:

Rails一本で。 このエントリーを含むはてなブックマーク はてなブックマーク - Rails一本で。

2008 年 12 月 18 日 コメントはありません

ヽ( ・∀・)ノくまくまー(2008-12-16)

Rails edge に Metal という新しい機能が追加された。これは Rack を用いた高速な Controller であり、Rails の色んな機能は捨ててでも、兎に角、単純で速いレスポンスがどうしても必要だ!という局面ではもの凄い助けになるだろう。

いままでのRailsの遅さがネックになるようなシチュエーションに対するアンサー的な機能が追加されたみたいです。(すばらしー、詳細は↑を。)

ここで、こちらのコメントで思ったことがあったのでひとつ。

ヽ( ・∀・)ノくまくまー(2008-12-16)

paco (2008-12-17 15:19)
rails一本で何も考えずにスタートしても後で何とかなるって安心感は増えますねー

自分は「Railsしか触ってない」って思っているところがあったのだけれど、使い始めた頃の1.2といまの2.2ではけっこう違う。機能の追加や変更があるたびに基づいている考えも変わっているわけで、ちゃんとそれに追従していけばそれでも悪くないのかなーと。もちろん視野を狭めるつもりはないのだけれど、なんとなく感じていた「Railsだけしか」的な負い目みたいなのは余計なことなんだろうな。

そもそもそこまで深くRails知ってるのかって言うとNoなんですがね、同じ物を見続けていても対象が動いていれば結果的に自分も動いていけるんだよな、と。そういうことを感じたのです。

・・・と、ここまできてぴったりな言葉を思い出した。

「牛に引かれて善光寺参り」

そう、これだ。Railsは牛。

カテゴリー: Rails タグ: