Thinkphp3.2.3 关系模型小细节

关系模型中不能有下滑下。否则不能识别该关系模型。

模型的类名不能代下滑下

$Feedback=D("feedback_q");

不能进入对应关系模型

$Feedback=D("feedbackQ");

可以进入对应的关系模型

模型类名使用驼峰命名法会对应下划线分割的表

假如表前缀是think_

feedbackQ对应的表是 think_feedback_q

feedbackq对应的表是 think_feedbackq


关系模型中的mapping_key

/*HAS_MANY BELONGS_TO HAS_ONE*/
protected $_link = array(
'answer' => array(
'mapping_type'      =>  self::HAS_MANY,
'class_name'        =>  'feedbacka',
'mapping_name'      =>  'answers',
//本表里的主键
'mapping_key'       =>  'id',
//关联表里的外键
'foreign_key'       =>  'q_id',
// 'condition'       =>  '1=1',
'mapping_order'       =>  ' stmp asc',
// 'relation_foreign_key'  =>  'id',
// 'relation_table'    =>  'think_role_user',

);

class RelationModel中:

$mappingKey =!empty($val['mapping_key'])? $val['mapping_key'] : $this->getPk(); // 关联键名

$pk   =  $result[$mappingKey];


你可能感兴趣的:(thinkphp)