CHasManyRelation
鍖 | system.db.ar |
---|---|
缁ф壙 | class CHasManyRelation » CActiveRelation » CBaseActiveRelation » CComponent |
瀛愮被 | CManyManyRelation |
婧愯嚜 | 1.0 |
鐗堟湰 | $Id: CActiveRecord.php 3533 2012-01-08 22:07:55Z mdomba $ |
婧愮爜 | framework/db/ar/CActiveRecord.php |
CHasManyRelation琛ㄧず姝ゅ弬鏁版寚瀹氫竴涓狧AS_MANY 鍏崇郴銆
鍏叡灞炴
灞炴 | 绫诲瀷 | 鎻忚堪 | 瀹氫箟鍦 |
---|---|---|---|
alias | string | 杩欎釜鍏崇郴鎵鎸囩殑琛ㄧ殑鍒悕銆傞粯璁や负null锛 鎰忓懗鐫姝ゅ埆鍚嶅皢鍜屾鍏崇郴鍚嶄竴鏍枫 | CActiveRelation |
className | string | 鐩稿叧鐨勬椿鍔ㄨ褰曠被鐨勫悕瀛 | CBaseActiveRelation |
condition | string | WHERE 瀛愬彞銆傚CActiveRelation杩欎釜缁ф壙绫, 鍏宠仈鍒版潯浠堕噷闈㈢殑瀛楁鍚嶅瓧搴旇浠ュ墠缂 'relationName' 鏉ラ槻姝㈡涔夈 | CBaseActiveRelation |
foreignKey | mixed | 鍏崇郴涓殑澶栭敭 | CBaseActiveRelation |
group | string | GROUP BY 瀛愬彞銆傚CActiveRelation杩欎釜缁ф壙绫, 鍏宠仈鍒版潯浠堕噷闈㈢殑瀛楁鍚嶅瓧搴旇浠ュ墠缂 'relationName' 鏉ラ槻姝㈡涔. | CBaseActiveRelation |
having | string | HAVING 瀛愬彞銆備负CActiveRelation瀛愮被锛 鍦ㄦ灞炴т腑寮曠敤鐨勫垪鍚嶇О搴旇浠ュ墠缂 'relationName' 鏉ラ槻姝㈡涔夈 | CBaseActiveRelation |
index | string | 鍒楃殑鍚嶇О琚敤浣滃瓨鍌ㄥ叧鑱斿璞$殑閿 榛樿涓簄ull锛岃繖鎰忓懗鐫浣跨敤浠庨浂寮濮嬬殑鏁存暟ID銆 | CHasManyRelation |
join | string | 鎬庢牱璺熷叾瀹冩暟鎹〃鍏宠仈銆傝繖涓窡鍦 SQL 璇彞涓 JOIN 鏉℃鐩稿悓銆
姣斿锛'LEFT JOIN users ON users. |
CBaseActiveRelation |
joinType | string | 杩炴帴绫诲瀷銆傞粯璁ゅ间负鈥楲EFT OUTER JOIN鈥欍 | CActiveRelation |
limit | integer | 瑕侀夊畾鐨勮鐨勯檺鍒躲傚畠浠呭鎳掑姞杞借繖涓浉鍏冲璞℃湁鏁堛傞粯璁や负 -1锛屾剰鍛崇潃娌℃湁闄愬埗limit. | CHasManyRelation |
name | string | 鐩稿叧瀵硅薄鐨勫悕瀛 | CBaseActiveRelation |
offset | integer | 瑕侀夊畾鐨勮鐨勫亸绉婚噺銆傚畠浠呭鎳掑姞杞借繖涓浉鍏冲璞℃槸鏈夋晥鐨勩傞粯璁ゆ槸 -1锛屾剰鍛崇潃娌℃湁鍋忕Щ閲忋 | CHasManyRelation |
on | string | ON 瀛愬彞. | CActiveRelation |
order | string | ORDER BY 瀛愬彞銆備负CActiveRelation瀛愮被锛 鍦ㄦ灞炴т腑寮曠敤鐨勫垪鍚嶇О搴旇浠ュ墠缂 'relationName' 鏉ラ槻姝㈡涔夈 | CBaseActiveRelation |
params | array | 鏉′欢涓殑绾︽潫鏁版嵁銆 閿悕鏄弬鏁扮殑鍗犱綅绗﹀悕瀛楋紝鍊兼槸鍙傛暟鍊笺 | CBaseActiveRelation |
scopes | mixed | 瑕佸簲鐢ㄧ殑鑼冨洿
鍙互璁剧疆涓轰笅鍒楀间箣涓:
|
CActiveRelation |
select | mixed | 瑕佹煡璇㈢殑瀛楁鍚嶅瓧銆傦紙鏁扮粍鎴栬呮槸鍚嶅瓧浠ラ楀彿鍒嗛殧鐨勫瓧绗︿覆锛夈 涓嶈杞箟鎴栬呮槸娣诲姞鍓嶇紑鍒拌繖涓瓧娈靛悕瀛楋紝闄ら潪瀹冧滑闇瑕佸湪琛ㄨ揪寮忛噷闈㈢敤鍒般 杩欑鎯呭喌涓嬶紝浣犲簲璇ヤ互鈥榬elationName鈥欎綔涓哄瓧娈靛墠缂銆 | CBaseActiveRelation |
through | string | 鍏崇郴鐨勫悕绉拌鐢ㄤ綔姝ゅ叧绯荤殑妗ユ銆 榛樿涓簄ull锛屾剰鍛崇潃涓嶄娇鐢ㄤ换浣曟ˉ姊併 | CHasManyRelation |
together | boolean | 鏄惁搴斿皢姝よ〃涓庝富琛ㄨ仈鎺ャ 褰撹繖涓睘鎬ц缃负false鏃讹紝鍜岃繖涓叧绯诲叧鑱旂殑琛ㄥ皢鍑虹幇鍦 涓涓崟鐙殑JOIN璇彞涓 濡傛灉杩欎釜灞炴ц璁剧疆涓簍rue锛岀浉搴旂殑琛ㄦ绘槸涓昏〃杩炴帴鍦ㄤ竴璧凤紝 涓嶇鏄富琛ㄨ闄愬埗鎴栨病鏈夈 濡傛灉杩欎釜灞炴ф病鏈夎缃紝鐩稿簲鐨勮〃浠呭拰涓昏〃杩炴帴 浠呭綋涓昏〃涓嶈闄愬埗鏃躲 | CActiveRelation |
with | string|array | 鎸囧畾鐩稿叧鐨勫璞″簲璇ヨ鎬ュ垏鐨勫姞杞藉綋杩欎釜鍏宠仈瀵硅薄琚噿鍔犺浇鏃躲 鏇村鍏充簬杩欎釜灞炴х殑淇℃伅锛屽弬瑙CActiveRecord::with()銆 | CActiveRelation |
鍏叡鏂规硶
灞炴ц缁
index
灞炴
public string $index;
鍒楃殑鍚嶇О琚敤浣滃瓨鍌ㄥ叧鑱斿璞$殑閿 榛樿涓簄ull锛岃繖鎰忓懗鐫浣跨敤浠庨浂寮濮嬬殑鏁存暟ID銆
limit
灞炴
public integer $limit;
瑕侀夊畾鐨勮鐨勯檺鍒躲傚畠浠呭鎳掑姞杞借繖涓浉鍏冲璞℃湁鏁堛傞粯璁や负 -1锛屾剰鍛崇潃娌℃湁闄愬埗limit.
offset
灞炴
public integer $offset;
瑕侀夊畾鐨勮鐨勫亸绉婚噺銆傚畠浠呭鎳掑姞杞借繖涓浉鍏冲璞℃槸鏈夋晥鐨勩傞粯璁ゆ槸 -1锛屾剰鍛崇潃娌℃湁鍋忕Щ閲忋
through
灞炴
锛堝彲鐢ㄨ嚜 v1.1.7锛
public string $through;
鍏崇郴鐨勫悕绉拌鐢ㄤ綔姝ゅ叧绯荤殑妗ユ銆 榛樿涓簄ull锛屾剰鍛崇潃涓嶄娇鐢ㄤ换浣曟ˉ姊併
鏂规硶璇︾粏
mergeWith()
鏂规硶
public void mergeWith(array $criteria, boolean $fromScope=false)
| ||
$criteria | array | 鍔ㄦ佹寚瀹氱殑鏉′欢 |
$fromScope | boolean | 鏄惁姝ゆ潯浠朵粠鑼冨洿鍚堝苟 |
婧愮爜锛 framework/db/ar/CActiveRecord.php#2196 (鏄剧ず)
public function mergeWith($criteria,$fromScope=false)
{
if($criteria instanceof CDbCriteria)
$criteria=$criteria->toArray();
parent::mergeWith($criteria,$fromScope);
if(isset($criteria['limit']) && $criteria['limit']>0)
$this->limit=$criteria['limit'];
if(isset($criteria['offset']) && $criteria['offset']>=0)
$this->offset=$criteria['offset'];
if(isset($criteria['index']))
$this->index=$criteria['index'];
}
鍚堝苟涓涓甫鏈夊姩鎬佹寚瀹氱殑鏉′欢鍒拌繖涓叧绯汇