我将Phalcon Framework与mysql和mongo数据库的服务连接用于每种类型的模型。 除了mysql模型信息之外,我们制作了一个与模型相关联的mongo翻译系统,以便将相关翻译保存到mongo db。
使用扩展\Phalcon\Mvc\Model的mysql模型,我可以通过模型的关联连接服务访问数据库的名称和其他信息:
$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
中获取这些信息答案 0 :(得分:1)
您将在getSource()
中找到方法Phalcon\Mvc\Collection
,该方法将返回集合的名称(表名称)。
您的模型类应继承自\Phalcon\Mvc\MongoCollection
的{{1}}。
编辑:Phalcon的MongoAdapter是Incubator library
的一部分