2006-05-30 (火) [長年日記]
■ [Rails] ちょっとしたタイプをどこに置くか
タイプっていうのはカテゴリだとかステータスだとか、
1:男性 2:女性
1:承認待ち 2:活動中 3:削除
みたいなフラグのこと。 カテゴリテーブル作るまでもない程度のちょっとしたやつ。 これをどこに置くか。
- モデル
- ビュー
- ヘルパー
- コントローラ
さあどれ。
個人的にはモデル。
モデルにハッシュを指す定数を定義する。
class Person < ActiveRecord::Base
MAN = 1; WOMAN = 2;
GENDER = {
MAN => '男性',
WOMAN => '女性'
}
end
フラグは「フラグ名_type」というカラム名にしてる(フラグ名_idにするといろいろと面倒なので)。 モデル中でフラグじゃなく対応する文字列を返すときは「フラグ名」というメソッドを定義してる。
class Person < ActiveRecord::Base
MAN = 1; WOMAN = 2;
GENDER = {
MAN => '男性',
WOMAN => '女性'
}
def gender
return GENDER[self.gender_type]
end
end
こうするとカラム名とメソッド名がかぶらない。
VIEW側のSELECTタグ用には、それを返すメソッドを作る。
def self.select_gender
return GENDER.collect{|key, val| [val, key] }
end
key, val を逆転させるのはヘルパの都合上。 特定のタグを入れてないので、まぁモデルでいいんじゃねーかな。
ステータス変更はその都度、メソッドを用意。
def be_man self.gender_type = MAN end def be_woman self.gender_type = WOMAN end
たずねるメソッドも同じように用意。
def man? self.gender_type == MAN end def woman? self.gender_type == WOMAN end
でも、ヘルパーかなーという気もしてる。
ビューに変なタグ(ヘルパー)が入るのは、 共同作業的にダメな気がしてるので、ちょっとなあ。
何が正しいのかよく分からん。
どうしたもんかなあ。モデルに書くのは無い気がしてきた。
ああ、設定ファイルというか、定数ファイルみたいなのもあるよね
あれは無い。
■ こないだコンタクトを買ったんですが
度が一気にアップしてビックリするぐらい見えすぎて、 目の奥が痛いアーンドすぐ眠くなって仕事にならんので、 ひとつ度を下げてもらおうと思います。
分かる人は分かるだろうけど、もう私は「-6」ですよ。 めちゃくちゃ悪すぎ。明日にでも「-5.5」にしてもらう予定。
■ TV消化
ハルヒ9
んー?こんなのでしたっけ。
エウレカ34
あんま用語を理解してないので、なんかもう別にーって感じ。 GYAOで見た29話までが面白かったなあ。
ガイヤ「激突!巨大家具メーカー」
面白かった。大塚家具行きたい(一度も行ったことない)。イケアは通販やっておくれ。
ガイヤ「ファッションも鮮度が命」
これまたオモシロス。
- ZARAは一週間で服を作る
- 緯度作戦
- 仕事のサイクルは一週間
- 後追いビジネス
- ふつうの娘でいい。
きらきらアフロ
大阪城ホール行きたい!チケット取りたい!でも東京は生放送じゃない!関西の人に取ってもらいたい!

「テーブル(ARモデル)つくるのだるいなぁ」だからモデル(非AR).
はぶさんのERD本を100回くらい読めばテーブルを作りたくなるかも。かも。