2012-02-23 69 views
0

任何人都知道如何使用着名的基于CakePHP ORM的'find'查询函数来执行此操作?CakePHP自定义查询

$sql = "SELECT id FROM users WHERE id IN (SELECT user_id 
              FROM classification 
              WHERE class_name = '".$classname."')"; 

我想要做的是让用户的ID(从users表)每当CLASS_NAME提交。

正如您所见,user_id是classifications表的外键。

回答

1

如果你有用户和分类型与具有用户的hasMany关系分类,你可以用

$result = $this->Classification->find('first', array('conditions' => array(
    'Classification.class_name' => $classname 
))); 

foreach ($result['Classification']['User'] as $user) 
    echo 'User id: ' . $user['id'] . '<br />'; 
+0

感谢去的,但我有一个问题..我们可以执行的ConnectionManager了getDataSource ::(“second_db” )在用户模型中?因为我正在使用外部连接到另一个非蛋糕应用程序。或者是否需要创建另一个与该应用程序相关的新模型,但驻留在CakePHP中?或者,我真够傻问这个吗? :) – foxns7 2012-02-23 13:32:42

+0

更好地使用具有指定的特定数据源的模型。 – dogmatic69 2012-02-23 17:13:51