2005-05-27 (Fri) [長年日記]
_ The Rails BetaBook is Ready
You can now buy the book as either a PDF or as a PDF/Paper book combo.
[PragDaveより引用]
本+PDFは$43.75+送料(日本だと$35.50、あれさっきはもっと安かったような)、PDFだけだと$22.50。
_ [RubyConf] Deadline extension for presentation proposals
The deadline for submitting a proposal for a full-length presentation at RubyConf 2005 is being extended from May 27 to June 3.
[[RubyConf] Deadline extension for presentation proposalsより引用]
preregisterがRailsのエラーでコケるのと関係あるのかしら。
_ 外部キー
外部キー制約付けない派が大多数。なるほど。確かに実務上は付けないほうがよさそうではあるのだけど。 ちょっと意外ではあった
[Csus4.net - Just example. Blog Archive PoEAA 3rdより引用]
そうなのか。 たしかにActiveRecordみたいなの使うと、使いにくい面もあるよね。
ON DELETE CASCADEとか大好きなんだけどな。 find_by_sqlも好きだ。 というか、SQL書くの結構好き。
ちなみに、外部キー使うなら、ON DELETE CASCADEにしないと そもそもfixtureが使えない。 fixutreを書いた順にinsertして、deleteするのも書いた順になるから。 このへんはもうちょっと何とかなりそうな気もする。
_ なぜ外部キーを使うのか
自分の場合、エラーチェックのためではなく、 ドキュメンテーションというかコードの意図を明確にするため という側面が強い。ちょっと型の話に似ている。 リレーショナルデータベースって、「リレーショナル」っていうくせに 外部キーが使えるようになるまではリレーションが表現されてなかったんだもの。ひどい話だ。
ActiveRecordを使う場合はテーブルの関連をassociationで表現できるので、そういう意味では外部キーはなくてもいい。 ON DELETE CASCADE相当のこともActiveRecord側でできるはずだ (やったことないけど)。
そういえば、強い型の言語からもずいぶん遠ざかっているな。
はじめまして。<br>> リレーションが表現されてなかった<br>それは誤解です。リレーション=テーブルです。<br>(ちなみに外部参照=リレーションシップです。)<br>ただ、世間的には用語が誤用されていますので、間違えるのも仕方ないかも。という気もします;-)
なるほど。