加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

zend-framework2 – MasterSlaveFeature方法

发布时间:2020-12-13 22:46:29 所属栏目:PHP教程 来源:网络整理
导读:我目前使用AbstractTableGateway拥有我的Db模型,所有我的select / insert / update / delete查询都运行正常.但现在我想添加MasterSlaveFeature,我对如何做到这一点感到有点困惑.文档并没有给出一个很好的例子: http://zf2.readthedocs.org/en/latest/module
我目前使用AbstractTableGateway拥有我的Db模型,所有我的select / insert / update / delete查询都运行正常.但现在我想添加MasterSlaveFeature,我对如何做到这一点感到有点困惑.文档并没有给出一个很好的例子:

http://zf2.readthedocs.org/en/latest/modules/zend.db.table-gateway.html#tablegateway-features

我目前有这个设置:

namespace LoginModel;

use ZendDbTableGatewayFeatureMasterSlaveFeature;
use ZendDbTableGatewayFeatureFeatureSet;
use ZendDbTableGatewayAbstractTableGateway;
use ZendDbSqlSelect;
use ZendDbSqlExpression;

class Passport extends AbstractTableGateway
{
public function __construct($adapter,$slave)
{
    $this->table = 'passport';

    $this->adapter = $adapter;

    $this->featureSet = new FeatureSet();
    $this->featureSet->addFeature(new MasterSlaveFeature($slave));

    $this->initialize();
}

public function Profile($employeeid)
{
    $result = $this->select(function (Select $select) use ($employeeid) {
        $select
            ->columns(array(
                'count' => new Expression('COUNT(*)'),'employeeid','passwd','group','name','status','timezone','timeformat','locale','max_search'
            ))
            ->where($this->adapter->getPlatform()->quoteIdentifier('employeeid') . ' = ' . $this->adapter->getPlatform()->quoteValue($employeeid))
            ->limit(1);
    });

    return $result->current();
}

}

我传递两个Adapters $adapter和$slave,每个都有相同的表,除了一个是空的,另一个实际上有数据.根据文档我应该有什么工作,但我觉得我在这里遗漏了一些东西,但不知道是什么.

$adapter是具有数据的master数据库
$slave是没有数据的slave数据库

我希望我的SELECTS从$slave(当前没有数据)获取数据,Insert / Update / Delete应该转到$adapter.

有人可以帮我解决这个问题吗?谢谢

解决方法

更新:从ZF 2.0.5开始,有一个错误.配置是正确的.

更新:看起来应该在2.1版本中解决

更新:我现在可以确认这已经解决并在2.0.7和2.1中工作

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读