「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 でインポートしても落ちる。
なんだろ、これ。日本語環境だとダメとかかな?
ログインが必要な処理で、なおかつ、特定のユーザだけに管理者権限を与えたい場合、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 へチケットを登録してみた。ニセ英語で(笑)。