CakePHP hasOne / belongsTo模型关系
发布时间:2020-12-13 17:09:39 所属栏目:PHP教程 来源:网络整理
导读:我有一些我试图联系的模型. 一个模型是Item,一个是Slide,另一个是Asset. 项目下面有多个幻灯片.资产基本上是已上传的文件(图像,mp3等),幻灯片是显示资产的位置.每张幻灯片都有一个资产,但给定资产可能属于多个幻灯片.幻灯片定义了asset_id字段. 我目前将模型
我有一些我试图联系的模型.
一个模型是Item,一个是Slide,另一个是Asset. 项目下面有多个幻灯片.资产基本上是已上传的文件(图像,mp3等),幻灯片是显示资产的位置.每张幻灯片都有一个资产,但给定资产可能属于多个幻灯片.幻灯片定义了asset_id字段. 我目前将模型定义为: 滑动 class Slide extends AppModel { var $name = 'Slide'; var $order = array("Slide.order" => "asc"); var $belongsTo = 'Item'; var $hasOne = array( 'Asset' => array( 'className' => 'Asset','foreignKey' => 'id','dependent' => false ) ); } // Slide class 财富 class Asset extends AppModel { var $name = 'Asset'; var $displayField = 'name'; var $belongsTo= array( 'Assetdir' => array( 'className' => 'Assetdir','foreignKey' => 'assetdir_id' ),'Slide' => array( 'className' => 'Slide','foreignKey' => 'id' ) ); } // Asset class 当我加载幻灯片时,我看到它的父元素Item在返回的数据中出现,但关联的资产却没有.我在这做错了什么? 解决方法
实际上我认为这是幻灯片和资产之间的一对多关系.从
Model associations page:belongsTo:当前模型包含外键.因此,任何具有另一个外键的模型都属于另一个.
所以我看待它的方式: 项目: > hasMany Slide 滑动: > belongsTo Item(with item_id) 资产: > hasMany Slide 为了检索你想要的相关模型,我建议查看Containable behavior. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |