« 本日の体操 | メイン | 鶏砂肝とニラ »

2005年07月04日

[予定] 7月4日の行動

■午前
・プログラミング

1)PosgresSQLのユーザ作成
# su -l posgres
% createuser -A -d -P y-ishiha
-A user can not add new users
-d nser can create new databases
-P assign a password to new user

2)データベースの作成
% createdb -E utf-8 xchro

3)Catalyst::Plugin::Authenticate::CDBIのインストール
CPANに登録されていないので、http://dev.catalyst.perl.org/browser/trunkより、CDBI.pmをとってきて、/usr/lib/perl5/site_perl/5.8.5/Catalyst/Plugin/Authenticateの下にコピーした

4)PostgreSQLにユーザ認証用テーブルを定義
% cat a.spl
BEGIN TRANSACTION;
CREATE TABLE users (
uid int PRIMARY KEY NOT NULL,
username varchar(100),
password varchar(100)
);
INSERT INTO "users" VALUES(1, 'Melody', 'Nelson');
COMMIT;
% psql -e xchro < a.spl

・昼食
 残り物です、はい!

■午後
・プログラミング

5) モデルの作成(ちょっとはまる)
% script/my_app_create.pl model AuthDB CDBI dbi:Pg:dbname=xchro y-ishiha
で、PosgtreSQLからテーブルのインデックス名の取得に失敗して、NGになってしまう。ヘルパースクリプトを追っていくと、下記のようなSQLを発行しているが、relname='public.users'のpublicがいらない。

SELECT indkey FROM pg_index
WHERE indisprimary=true AND indrelid=(
SELECT oid FROM pg_class
WHERE relname='public.users');

そこでテーブル名を取得しているところまで追っていくと、DBD::Pgのバージョンをチェックして1.31以上なら、no_prefix指定して、テーブル名の前のprefixを取り除いてテーブル名を取得するようにVersion0.22のClass::DBI::Loader:Pg::_tables() が記述しているにも関わらず、サーバにインストールされているDBD::PgのVersion1.31はオプションを一切みずにprefixをテーブル名につけて返している。そこで、DBD::Pgを1.43に更新した。そして、再度ヘルパースクリプト実行したら、下記のように正しく生成された。

created "/home/y-ishiha/public_html/catalyst/My-App/script/../lib/My/App/M/AuthDB.pm"
created "/home/y-ishiha/public_html/catalyst/My-App/script/../lib/My/App/M/AuthDB"
created "/home/y-ishiha/public_html/catalyst/My-App/script/../lib/My/App/M/AuthDB/Users.pm"
created "/home/y-ishiha/public_html/catalyst/My-App/script/../t/m/authdb_users.t"

投稿者 nekobara : 2005年07月04日 09:04


トラックバック

このエントリーのトラックバックURL:
http://www.ishihara.ne.jp/mt/mt-tb.cgi/375

コメント

こんばんは^^。

>レシピも見ずに適当にやったら、ひどかった~
レシピ見ながら料理をするだけエライと思いますが^^;。

我が家は

・焼鮭の混ぜご飯
(炊きたてご飯に、刻み湯通し三つ葉といりゴマとほぐし焼鮭を混ぜたご飯。)
・野菜の味噌汁(煮物用の冷凍野菜を使用)
・冷やしトマト

でした。手抜きだなぁ^^;。

投稿者 shamon : 2005年07月04日 21:47

>レシピ見ながら料理をするだけエライと思いますが^^;。

レシピを見ないと何を作っていいのかわからないので
見て、なるべく忠実につくっています。というのも、
まだ基本ができていないので、まずは型を覚えるという
ことで、がんばっています。

投稿者 nekobara : 2005年07月05日 08:47