【问题标题】:Zend Auth - Using two tablesZend Auth - 使用两个表
【发布时间】:2012-04-24 08:53:29
【问题描述】:

我目前正在 Zend Framework 中开发一个使用 Zend_Auth 的网站。目前数据库的设计如下:

  • 用户 - id / 电子邮件
  • users_props - id - user_id - prop_name - prop_value

但是,当前的 Zend_Auth_Adapter_DbTable 只使用一个表,因为我必须使用表并需要加入它们。

我到底怎么能做到这一点?就我而言,有三种选择:

  1. 我以某种方式创建了一个 (mysql) 视图
  2. 我更改了设计,使用户表同时包含用户名/密码
  3. 我将 Zend_Auth_Adapter_DbTable 重写为 Custom_Auth_Adapter_DbTabe

谁能指出最佳做法是什么?

提前致谢:)

【问题讨论】:

    标签: php zend-framework zend-auth


    【解决方案1】:

    正确的做法是创建一个自定义 Zend_Auth_Adapter 以对您的特定数据库架构进行身份验证。

    其实很简单,接口中只有一个方法可以实现。您也可以根据需要扩展Zend_Auth_Db_Adapter 并覆盖方法。可能只有构建执行并返回查询结果。但老实说,如果是我的话,我只会从头开始实施接口。这样IMO就容易多了:-)

    【讨论】:

    • 你的评论让我意识到我搜索错了。其实很容易。对于其他寻找 Zend_Auth_Adapter_DbTable 想要使用两列的人;编写您自己的 Custon_Auth_Adapter。例如:stackoverflow.com/questions/3328047/… :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-07
    • 1970-01-01
    • 2014-05-20
    • 1970-01-01
    • 2014-08-29
    相关资源
    最近更新 更多