cakephp - CakePHP的AuthComponent如何使用 "Users"以外的其他表?

标签 cakephp authentication login cakephp-1.3

CakePHP的AuthComponent假定您有一个包含用户名和密码的Users表。我想找到一种方法来覆盖默认的表名,从“用户”到“帐户”。

背景信息:

我设计数据库的方法是拥有一个Users表和一个Accounts表。

帐户:

  • id
  • user_id
  • 用户名
  • 密码
  • 身份验证服务(例如,我的网站,Facebook,Google,OpenID等)

  • 用户:
  • 只是拥有用户的所有个人信息(年龄,性别等)

  • 原因是这样的
  • 每个用户可以有多个帐户可以登录,因此它们不会被锁定为一个
  • 我可以将第三方服务连接到一个帐户,以便更加出色

  • 现在回到问题所在。

    CakePHP拥有有关更改默认字段名称的文档,但是在更改默认表名称方面我找不到任何东西,但是假设它在本质上是相似的...

    更改默认字段名称的示例:
    function beforeFilter() {
        $this->Auth->fields = array(
                'username' => 'username',
                'password' => 'secretword'
            );
     }
    

    是否有办法完成此操作,还是应该按照CakePHP约定重新组织表并仍然完成相同的工作?

    最佳答案

    在app_controller.php中:

    function beforeFilter() {
        $this->Auth->userModel = 'Account';
    }
    

    关于cakephp - CakePHP的AuthComponent如何使用 "Users"以外的其他表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/437911/

    相关文章:

    cakephp - Cakephp 2.4.x。 Auth 组件 login() 始终返回 true

    php - 如何在 CakePHP 中通过 Ajax 处理类似测验游戏的表单/数据?

    authentication - 在 Subversion 中,我可以成为登录名以外的用户吗?

    css - 只有数字的字段 ASP.NET

    linux - 什么是 SSH,它是如何工作的?

    javascript - 一种在我的 MVC 框架内重用 JavaScript 代码的方法

    javascript - CakePhp3 - 在 ChartJs 上显示值

    python - Pylons + AuthKit 中的用户身份验证

    ios - Facebook SDK 3.2 登录仅在应用程序未终止时才有效

    c# - .NET中的注册页面错误