2008-02-01から1ヶ月間の記事一覧

Skinny Controller, Fat Model

http://weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model ロジックはなるべくモデルで定義して、コントーラーはシンプルに保ちましょうというpractice(習慣)

Object.tap

オブジェクトの状態を任意の場所で確認できるため、便利。従来のデバッグ方法のように構文を大きく崩す事なく実行できるところが良い。 class Object def tap yield self self end end 使用例 blah.sort.grep( /foo/ ).tap { |xs| p xs }.map { |x| x.blah }…

ActiveRecord::Errorsあたりのローカライズ

このサイトを参考にしました。というより全くこの通りにやりました。validate_関連で、エラーが出た際にいろいろ英語がでてきちゃうのでその辺りを修正。まずは、フォームのエレメント名がそのままでちゃうのを防ぐために、modelの中で、下記のようにローカ…

ActiveRecord::RecordNotFound

Object.findの時にはraiseされるが、find_by_fooのように確実に結果があることを期待していない場合などにはraiseされない。今日の発見はこんなところ。

メールの受信方法

RAILS_ENVを設定してあげるところがポイント。 $ cat /var/qmail/alias/.qmail-alias-signup export RAILS_ENV=production && cd /usr/local/www/foobar.com && /usr/bin/ruby script/runner 'IncomingSignupHandler.receive(STDIN.read)'

なぜSymbolを使うのか

よく分からないままrails流儀に従って:foobarとかやってたので、調べてみた。こういう事らしい。つまりは同じ文字列何個も作る度にメモリを確保しないようにする。従ってメモリが節約される。

携帯用に入力モード指定ヘルパー

mobile on railsというプラグインを入れてみたけど、これはとても便利。しかし、これには携帯の入力モードを指定できるようなコードは無かったっぽいので、その辺りを自作。 22.6 カスタムフォームビルダーを参考に作ってみた。まず、app/helpers/mobile_tag…

MacPortsを削除

osx

Leopardにしてから、いろいろ面倒くさいことになっていたので、思い切って削除。 削除されて困るようなものはなさそうなので、一応インストールしていたportsだけ記録。 $ sudo port list installed | sort > ~/Desktop/installed.ports.txt そしてばっさり…

SecurityError: Error #2060: セキュリティサンドボックス侵害

↓このエラーに小1時間ぐらいハマった… SecurityError: Error #2060: セキュリティサンドボックス侵害 ExternalInterface 呼び出し元 file:///.../.../actionscript3/FoundationAS3Animation/ch02/EventDemo.swf は file:///.../.../actionscript3/Foundatio…

Flash ThunderBolt

FireFoxのFireBugにデバッグ情報を出力してくれるデバッガーツール。 ダウンロードして展開する。 $ mkdir -p ~/actionscript3/classes $ cd ~/tmp $ wget http://flash-thunderbolt.googlecode.com/files/ThunderBoltAS3_v1.0.zip $ unzip http://flash-thu…

ActionScript 3.0 アニメーション

サンプルコードをダウンロードしたら、ソース内がSJISで書かれていたので これをUTF-8に変換。 $ sudo port install nkf $ cd ~/actionscript3/FoundationAS3Animation/ $ find . -name "*.as" -exec nkf -w --overwrite {} \;

Hypertable

http://www.hypertable.org/index.html とりあえずメモ。後で会社で使ってみることに。

TextMateでactionscript3環境

AS3環境をつくったを参考に。 $ mkdir -p ~/Library/Application\ Support/TextMate/Bundles $ cd ~/Library/Application\ Support/TextMate/Bundles $ export LC_CTYPE=en_US.UTF-8 $ svn co http://macromates.com/svn/Bundles/trunk/Review/Bundles/Flex.…

Flex 2 SDKのインストール

adobeのサイトから、Flex 2 SDKとFlex Language Packをダウンロードして、展開するだけ。 $ mkdir ~/flex2sdk/ $ cd ~/flex2sdk/ $ unzip ~/tmp/flex_sdk_2_hf1.zip $ unzip ~/tmp/flex_sdk_2_ja.zip

TextMateで日本語入力

TextMate で日本語をわりとまともに表示するを参考に。 まずは日本語入力パッチを入れる。 $ cd ~/tmp $ mkdir -p Library/Application\ Support/TextMate/PlugIns/ $ wget http://hetima.com/textmate/CJKInput20061110.zip $ unzip CJKInput20061110.zip $…

TextMateのインストール

rubyやらactionscriptの記述に便利そうなので、試しに使ってみることに。 $ wget http://macromates.com/textmate/files/TextMate.dmg 起動時にメールで送られて来たシリアルを入力。

データベースに反映

$ rake db:migrate

モデルの定義

class CreateSignups < ActiveRecord::Migration def self.up create_table :signups do |t| t.column :email, :string t.column :auth_key, :string, :size => 32 t.column :next_url, :text t.column :created_at, :timestamp t.column :updated_at, :time…

モデルの初期化

$ ruby script/generate model signup