在 CakePHP 1.3 中是否可以通过在users表中指示用户的 id 来登录用户?
现在,要进行“手动”登录,我这样做(有效):
$this->data['User']['username'] = username;
$this->data['User']['password'] = password;
$this->Auth->login($this->data);
我希望能够指示特定用户,例如在 login() 函数之前添加$this->data['User']['user_id'] 。(我已经尝试过了,但它不起作用)。
我想这样做的原因是因为在users表中有不同的用户记录,这些用户具有相同的用户名和密码。这看起来很奇怪,但在我的情况下是有道理的,因为同一个用户可能会出于不同的原因创建多个帐户,并且他可能会选择相同的用户名/密码。
任何想法将不胜感激!
编辑:
我将给出一个具体的例子来说明我正在尝试做的事情,也许它有助于带来一些想法。
假设我在 users 表中有这 2 条记录(字段是user_id / username / password / account_id):
- 记录 1:1 / johndoe / password1 / 10
- 记录 2:2 / johndoe / password1 / 15
所以这 2 条记录有相同的用户名和密码,但不同的 user_id 和 account_id。处理登录时,我知道用户选择了哪个account_id 。所以我想登录相应的用户。因此,如果用户选择帐户 15,那么日志就是,我应该使用 id 2 登录用户。
但是,cake 的登录方式是,它总是检索与用户名/密码匹配的第一条记录。在此示例中,cake 将使用 id 1 登录用户。
有什么办法可以做我想做的事吗?