アーカイブ

2007 年 8 月 のアーカイブ

rescueが補足してくれるもの。 このエントリーを含むはてなブックマーク はてなブックマーク - rescueが補足してくれるもの。

2007 年 8 月 31 日 Comments off

masuidriveさんに聞いた、知らないとハマりそうなこと。

Rubyリファレンスマニュアル – 制御構造

error_type が省略された時は StandardError のサブクラスであ る全ての例外を捕捉します。Rubyの組み込み例外は(SystemExit や Interrupt のような脱出を目的としたものを除いて) StandardError のサブクラスです。

[ref.] 組み込みクラス/モジュール/例外クラス例外クラス

class SomethingBad < Exception; end
begin
raise SomethingBad.new("なにか悪いこと")
rescue SomethingBad
p $!
end

ならちゃんとrescueされるけど、

class SomethingBad < Exception; end
begin
raise SomethingBad.new("なにか悪いこと")
rescue
p $!
end

だとスルーされてしまう。
Exceptionて名前にだまされるなよってことだ。
Javaの感覚があると、Exceptionの下にErrorがあるって変な感じがする。

class SomethingBad < StandardError; end
begin
raise SomethingBad.new("なにか悪いこと")
rescue
p $!
end

ならよし、と。

カテゴリー: Ruby タグ:

surroundをカスタマイズして楽をする。 このエントリーを含むはてなブックマーク はてなブックマーク - surroundをカスタマイズして楽をする。

2007 年 8 月 30 日 Comments off

vim + surround.vimでのはなし。
scaffoldなどで生成されたviewをgettext対応するときに

<%= _('') %>

で囲みまくるのが面倒だったので。

:let b:surround_95 = "<%= _('\r') %>"

範囲選択してs_で囲まれる。
なんで95なのかは

:echo char2nr("_")

詳しくは

:help surround-customizing

おまけ、スコープの意味(b:って知らなかった。)

:help E738

[ref.] vim/plugin/surround

カテゴリー: Rails タグ:

メソッド縛り。 このエントリーを含むはてなブックマーク はてなブックマーク - メソッド縛り。

2007 年 8 月 30 日 Comments off

generate scaffoldで作られるコントローラに入っている

# GETs should be safe (see http://www.w3.org/2001/tag/doc/whenToUseGet.html)
verify :method => :post, :only => [ :destroy, :create, :update ],
:redirect_to => { :action => :list }

こう言われるとすべてのコントローラで同様のことをしなきゃいけない気がしてきた。
というか、あたりまえのこと?

[p.s.] 16:19
そういえば、コントローラ内の定義が

def index
verify
def list
def show
...

ってindexだけverifyの前に出てるのもなにか意味があるのかな。
まったくね、細かいことが気になる。

カテゴリー: Rails タグ:

通知メールがこない。 このエントリーを含むはてなブックマーク はてなブックマーク - 通知メールがこない。

2007 年 8 月 29 日 Comments off

MTで、コメントやトラックバックをいただいたときにメールが飛ぶようにしてあるんだけど、その通知メールのほとんどがspam認定されて、届かない。
それじゃ意味がないじゃないかね、えぇ!?

カテゴリー: 日記 タグ:

Rubyの試験。 このエントリーを含むはてなブックマーク はてなブックマーク - Rubyの試験。

2007 年 8 月 16 日 Comments off

Rubyの技術者認定試験が10月開始,2008年には世界に向け英語版も:ITpro

まつもとゆきひろ氏が理事長を務めるRubyの普及推進組織「Rubyアソシエーション」は技術者認定試験を開始する。2007年10月から東京と松江で筆記試験を行う。2008年2月にはインターネットで日本語版と英語版で,世界の技術者を対象にした試験を開始する。認定試験によりRubyの普及拡大などを図る。

始まったら受けてみよう、と決意表明的な。
認定を持っていることのメリット云々は置いておいて、ある分野を一通り知ろうとするときには、試験勉強って手っ取り早い方法だと思うのですよ。具体的な目標ができるから。

カテゴリー: Ruby タグ:

ActiveRecord::RecordNotFound. このエントリーを含むはてなブックマーク はてなブックマーク - ActiveRecord::RecordNotFound.

2007 年 8 月 15 日 コメント 2 件
>> User.find_by_login('foo')
=> nil
>> User.find(123)
ActiveRecord::RecordNotFound: Couldn't find User with ID=123
from /usr/local/ruby186/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1031:in `find_one'
from /usr/local/ruby186/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1014:in `find_from_ids'
from /usr/local/ruby186/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:419:in `find'
from (irb):7

レコードが見つからなかったときの挙動。
ActiveRecord::Base#find_by_*ではnilを返すのに、ActiveRecord::Base#findではActiveRecord::RecordNotFoundを投げてくるっていうのがどうも分からん。

Class: ActiveRecord::Base

RecordNotFound — no record responded to the find* method. Either the row with the given ID doesn’t exist or the row didn’t meet the additional restrictions.

ドキュメントはこう言ってるのに。
そもそも、レコードがなかったくらいでException投げてくるのって重い気がする。
ARだけになにか理由があるんだろうけど、それが知りたい。

カテゴリー: Rails タグ:

考え方のちがい。 このエントリーを含むはてなブックマーク はてなブックマーク - 考え方のちがい。

2007 年 8 月 13 日 Comments off

masuidriveさんと話をしていて、うまく言葉にできなかったことがスッキリしたのでメモなんぞ。
一言で言うと、「道具は体を拡張するもの」ということ。
以前、「最近の子どもはネットですぐ調べてしまうからいかん、図書館に行って本で探す苦労が大事なんだ。」的な話を押しつけ気味にされたことがあり、そのとき「ネットを使うことによって省略できた時間を、その先の、他の苦労をするために使えばいいんじゃないか。」という考えをうまく伝えられなかったことがあるのだけれど、この意識のずれは、どれだけ道具が「体の一部」になっているかによるんだな、と。
健康のためだとか、特に理由もないのに車で10分で行けるところを自転車で1時間かけて行かないですよね、てたとえれば伝わったんじゃないかな。
ちなみに、このエントリを書くのに、自転車の時速ってどのくらいだったけかと思って、ググってここを見つけたのだけれど、これをネットなしで調べるのって相当時間がかかるだろう。言及されている書籍を探すにしろ、実践するにしろ。

カテゴリー: 日記 タグ:

Instant Railsをつかう。 このエントリーを含むはてなブックマーク はてなブックマーク - Instant Railsをつかう。

2007 年 8 月 12 日 コメント 2 件

というか、とりあえず動かす。
社内向け勉強会用に作成したものを大公開。見にくかったところを少しなおしました。

初めてさわったんだけど、ApacheやMySQLの起動・停止、phpMyAdminまでメニューからサクッと出来てしまうのにはおどろいた。
アンインストールも作ったディレクトリをサクッと消すだけでいいみたいだし、ほんとにインスタントだわこりゃ。
ちなみに自分はWindowsのサービスとして上げっぱなしのcoLinuxがメインです。

カテゴリー: Rails タグ:

Amazonのおすすめメール。 このエントリーを含むはてなブックマーク はてなブックマーク - Amazonのおすすめメール。

2007 年 8 月 8 日 Comments off
今回のおすすめ内容:
* WEB+DB PRESS Vol.32
* グーグル・アマゾン化する社会 (光文社新書)
* YouTube革命 テレビ業界を震撼させる「動画共有」ビジネスのゆくえ [ソフトバンク新書]
* JavaWorldメモリアルDVD
* 入門Subversion―Windows/Linux対応
* Rails Recipes (Pragmatic Programmers)
* Web+DB press (Vol.31)
* LinuxWorld メモリアルDVDブック [2001-2007]

なぜ「いま」それを薦められるのかがよくわからん。

カテゴリー: 日記 タグ:

サイ本の新しいやつ。 このエントリーを含むはてなブックマーク はてなブックマーク - サイ本の新しいやつ。

2007 年 8 月 8 日 Comments off
JavaScript 第5版 JavaScript 第5版
オライリー・ジャパン(2007-08-14)

  • (著)David Flanagan
  • (翻訳)村上 列

オライリー・ジャパン
新品価格:¥ 4,410
ASIN:4873113296

Amazonで予約開始してたので注文。
JavaScript、いまひとつ「オレわかるぜー!」って言えない。

カテゴリー: JavaScript タグ: