我有一个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未被识别。
我必须列出用户的所有笔记,然后链接到每个单独的笔记页面。
答案 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' )))