CakePhp从特定用户的另一个表中提取数据

时间:2012-09-12 13:39:24

标签: php cakephp-2.0

我有一个cakephp2应用程序,用户根据他们在db上的凭据登录。身份验证&授权工作正常。

我有一个笔记表,用户的笔记存储在其中。每个用户都可以有很多笔记。

在一个页面上,我需要提取登录用户的所有笔记。

我创建了一个笔记模型:

class Note extends AppModel {

public $name = 'Note';

public $belongsTo = 'User';

}

在我的用户模型中我有:

class User extends AppModel {
public $name = 'User';
public $displayField = 'name';
public $hasMany = 'Note';....

在我创建的用户控件中:

public function getnotes($id = null) {
$this->User->id = $id;
}

但无论我运行什么查找语句,我都无法获得特定用户的注释。我运行debug($ id)并在屏幕上显示为false,因此显然当前用户ID未被识别。

我必须列出用户的所有笔记,然后链接到每个单独的笔记页面。

1 个答案:

答案 0 :(得分:0)

在cakePHP中集成AUTH组件...这样您就可以通过auth函数和数组(例如($ this-> Auth-> user('id'))登录用户ID / Info

用于auth集成使用下面的链接作为refence http://book.cakephp.org/2.0/en/tutorials-and-examples/blog-auth-example/auth.html

现在在查找记录时使用此用户ID

$这 - >注意 - >发现( '所有',阵列( '条件'=>阵列( 'Note.user_id'=> $这 - > Auth->用户( 'ID' )))