Php Yii中的元表模型
我刚开始在Yii开发我的新项目,我对Yii和MVC结构都是新手 我想得到一些关于制作元表和该表模型的建议。假设我喜欢为一个用户存储几个聊天句柄。我已经创建了一个表来存储用户详细信息,如用户id、用户名、电子邮件等。。另一个表是我的元表,它的结构是id、user\u id、key、value 我想将这两个表关联到一个模型中,这样我就可以访问存储在元表中的key值,比如$user->yahooPhp Yii中的元表模型,php,database,model,yii,relational,Php,Database,Model,Yii,Relational,我刚开始在Yii开发我的新项目,我对Yii和MVC结构都是新手 我想得到一些关于制作元表和该表模型的建议。假设我喜欢为一个用户存储几个聊天句柄。我已经创建了一个表来存储用户详细信息,如用户id、用户名、电子邮件等。。另一个表是我的元表,它的结构是id、user\u id、key、value 我想将这两个表关联到一个模型中,这样我就可以访问存储在元表中的key值,比如$user->yahoo 提前感谢。使用getter和setter。定义一个getYahoo方法,并在该方法中取消查找表以检索所需的
提前感谢。使用getter和setter。定义一个getYahoo方法,并在该方法中取消查找表以检索所需的值参见:
它将引导您完成一个与您想要做的类似的基本示例。请注意,如果使用外键设置数据库,Gii工具将在模型中为您创建此关系。如果您正在使用MySql、MySqlWorkbench或其他类似的工具来管理外键,则只需确保您正在使用InnoDB类型的表。只需为元表和主表创建一个模型即可。然后,如果您与该表有forign键关系,那么您将能够作为主表的属性访问元表模型。为了让事情更清楚: 假设我们有两张桌子: 顾客 -身份证 -名字 -地址 -名字 -电子邮件 顾客元 -身份证 -客户识别码 -元键 -元值 您将使用Gii为这两个表生成两个模型。然后,如果您使用MySQL和InnoDB表并在customer.id->customer\u meta.customer\u id之间创建外键关系,您将能够访问客户模型中的元数据,如下所示:
// this will echo get the first meta value
$model = new customer;
$customer = $model->loadModel( 3 );
echo $customer->customer_meta[0]->meta_value;
// or loop through the meta data
foreach( $customer->customer_meta as $meta ) {
echo 'Name: '.$meta->meta_key.' Value: '.$meta->meta_key.'<br />';
}
//这将获取第一个元值
$model=新客户;
$customer=$model->loadModel(3);
echo$customer->customer\u meta[0]->meta\u value;
//或者通过元数据进行循环
foreach($customer->customer\u meta作为$meta){
回显“名称:”。$meta->meta_键。“值:”。$meta->meta_键。“
”;
}
;