Phalcon.如何从mongoClient/service连接获取数据库名称

Ram*_*sta 5 php collections mongodb phalcon

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

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

$src->getReadConnection()->getDescriptor()['dbname'];
Run Code Online (Sandbox Code Playgroud)

其中$ 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
Run Code Online (Sandbox Code Playgroud)

但我没有办法做到这一点.我应该如何在\ Phalcon\Mvc\Model中获取这些信息

seb*_*ttg 1

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

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

编辑:Phalcon 的 MongoAdapter 是孵化器库的一部分