雑文発散

«前の日記(2008-03-25) 最新 次の日記(2008-03-28)» 編集
過去の日記

2008-03-27 [長年日記]

[] 契約書が届いた

とりあえず、あと2年はココに住んでも良いらしい。家賃さえ払い続ければ。

[Palm][Mac] SplashID4 for Mac がリリースされた

SplashID 4 の Mac OS X 版はホントに出るんだろうか?」と嘆いていた訳だが、おととい

SplashID 4 for Mac OS released」というエントリが上がって、製品がリリースされていた。

で、早速ダウンロードしてみたのだが、SplashID for Mac OS X では、フツーに日本語入力ができるようになっていた。まぁ、フツーに UTF-8 化されてるって事なんだろう。

これなら!と思って、現在利用してる 3 系からバージョンアップしようかといろいろ読んでみると、どうやら 3 と 4 ではデータの互換性がないので、3 でエクスポートして 4 でインポートする必要があるようだ。

3 でのエクスポートはすぐにできたのだが、4 でのインポートができない。読み込ませようとしたところで、アプリが落ちてしまう。3 のデータがおかしいのかと思って、4 でエクスポートして 4 でインポートしても落ちる。

なんだろ、これ。日本語環境だとダメとかかな?

[PHP] CakePHP で管理者権限的機能を実装する場合のベストプラクティスは?

ログインが必要な処理で、なおかつ、特定のユーザだけに管理者権限を与えたい場合、ACL を使うんだろうなぁと思いつつ、CAKE_ADMIN なんて設定もあるしどうすればいいんだよもー!と混乱していたのだが、「CakePHP 管理画面を作成する方法」でなんとなく納得。

細かなアクセス制限を行う必要がなければ、CAKE_ADMIN を設定して、Admin Routing でのコントロールで充分実現ができそうな気がしてきた。

そこに辿り着くまでに ACL を試そうとして、CakePHP 1.2 β のバグを発見。1.2 では、ACL 用のテーブルをデータベースに作る場合には、次のコマンドを実行せよとあったので、実行してみた。

 $ cd cake/console
 $ ./cake acl initdb

ところが、これ、バックエンドに PostgreSQL を使っていると、PHP Warning が出てテーブルの作成に失敗してしまう。発行されていた SQL を見てみたら、

 "id" integer serial NOT NULL,

なんて表現があった。これが SQL 標準なのかどうか良く知らないのだけど、少なくとも PostgreSQL では「integer serial」といった表現は使えない。dbo_postgres.php ないで、それっぽい変換ルーチンはあるのだけど、ACL のテーブル作成部分では利用されていないのかも知れない。

放置するのもアレなので、とりあえず CakePHP の Trac へチケットを登録してみた。ニセ英語で(笑)。