私はZend Frameworkをいじっていて、プロセスがどのように機能するかを確認するためだけに、作成中のWebサイトに対して「クイックスタート」ガイドを使用しようとしています. この答えが明らかな場合はご容赦ください。うまくいけば、経験豊富な誰かがこれに光を当てることができます。
3 つのデータベース テーブルがあります。
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`email` varchar(255) NOT NULL,
`username` varchar(255) NOT NULL default '',
`first` varchar(128) NOT NULL default '',
`last` varchar(128) NOT NULL default '',
`gender` enum('M','F') default NULL,
`birthyear` year(4) default NULL,
`postal` varchar(16) default NULL,
`auth_method` enum('Default','OpenID','Facebook','Disabled') NOT NULL default 'Default',
PRIMARY KEY (`id`),
UNIQUE KEY `email` (`email`),
UNIQUE KEY `username` (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
CREATE TABLE `user_password` (
`user_id` int(11) NOT NULL,
`password` varchar(16) NOT NULL default '',
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_id` (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
CREATE TABLE `user_metadata` (
`user_id` int(11) NOT NULL default '0',
`signup_date` datetime default NULL,
`signup_ip` varchar(15) default NULL,
`last_login_date` datetime default NULL,
`last_login_ip` varchar(15) default NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_id` (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
特定の状況で 3 つのテーブルすべてを使用する User モデルを作成したいと考えています。たとえば、メタデータが必要な場合は、メタデータ テーブルにアクセスします。user_password テーブルは、「デフォルト」の auth_method が設定されている場合にのみアクセスされます。ユーザーモデルからアクセスできるようにしたいプロファイルテーブルを後で追加する可能性があります。
ZF でこれを行う最善の方法とその理由は何ですか?