現在我沒有驗證。我有模型/標籤和標籤表。cakephp保存並插入另一個表格,沒有從不同模型的assosiasion
控制器/ TagController
<?php
App::uses('AppController', 'Controller');
/*App::uses('Article', 'Model');
App::uses('Link', 'Model');
App::uses('User', 'Model');*/
// with some model , sql is extending so I fell it commented out is better.
/**
* Tags Controller
*
* @property Tag $Tag
* @property PaginatorComponent $Paginator
*/
class TagsController extends AppController {
public $uses = array(//'Tag','Article','Link','User'
);
$this->Paginator->settings = array(
'conditions'=> array(
"Link.LFrom = $id"
),
'fields' => array('Link.*'),
現在蛋糕運行該SQL
SELECT Link
。* FROM db0tagplus
。 tag
AS Tag
其中Link
。 LFrom
= 2152 LIMIT 20
表格關係非常複雜,所以我不能使用協調。
如何生成這個sql?
SELECT `Link`.* FROM `Link` WHERE `Link`.`LFrom` = 2152 LIMIT 20
我想,如果我可以卸載模型和表'標記'它會好的。 我無法解決它與解除綁定(綁定是asssosiation問題)。
App::import
和app::use
是加載模型的順序,如何卸載指定的模型?
解決這樣
$this->loadModel('Article');
$this->Paginator->settings = array(
'conditions'=> array(
"Link.LTo = Article.ID"
),
'fields' => array('Link.*','taglink.*','Article.*'
),
'joins'
=> array(
array(
'table' => 'Link',
'type' => 'INNER',
'conditions' => array(
array("$id = Link.LFrom")
)
),
array(
'table' => 'Link',
'alias' => 'taglink',
'type' => 'INNER',
'conditions' => array(
array("Link.ID = taglink.LTo"),
array("$trikeyID = taglink.LFrom")
)
),
)
);
debug($this->Paginator->paginate('Article'));
$this->set('results',$this->Paginator->paginate('Link'));
是什麼問題? – Anubhav
我加了, 我想要這個sql。 –
使用遞歸查找查詢 – Anubhav