【问题标题】:Phalcon . How to get database name from mongoClient / service connection法尔康。如何从 mongoClient / 服务连接获取数据库名称
【发布时间】:2016-08-16 09:30:59
【问题描述】:

我将Phalcon Framework 与mysql 和mongo 数据库的服务连接一起用于每种类型的模型。 我们制作了一个与模型关联的 mongo 翻译系统,以将相关翻译保存到 mongo db,除了 mysql 模型信息。

使用 mysql 模型,扩展 \Phalcon\Mvc\Model,我可以通过模型的关联连接服务访问数据库名称和其他信息:

$src->getReadConnection()->getDescriptor()['dbname'];

$src 是我的 Phalcon\Mvc\Model

但是当我尝试使用扩展 \Phalcon\Mvc\Collection 的模型时,我找不到任何访问数据库名称的方法。我试图通过 phalcon\mvc\collection 方法来做到这一点,例如:

Abstract class Phalcon\Mvc\Collection

public setConnectionService (unknown $connectionService)
Sets the DependencyInjection connection service name

public getConnectionService ()
Returns DependencyInjection connection service

public MongoDb getConnection ()
Retrieves a database connection

但我没有任何好的方法来做到这一点。我应该如何在 \Phalcon\Mvc\Model

中获取这些信息

【问题讨论】:

    标签: php mongodb collections phalcon


    【解决方案1】:

    您会在Phalcon\Mvc\Collection 中找到方法getSource(),它返回集合的名称(表名)。

    您的 Model 类应该继承自 \Phalcon\Mvc\MongoCollection,后者继承自 Phalcon\Mvc\Collection

    编辑:Phalcon 的 MongoAdapter 是 Incubator library 的一部分

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-21
      • 1970-01-01
      • 1970-01-01
      • 2010-10-23
      • 1970-01-01
      • 1970-01-01
      • 2012-05-20
      • 2014-03-29
      相关资源
      最近更新 更多