Zend framework2 Zend Framework 2应用程序中的RedBeanPHP FUSE模型?
我试图在ZF2(v2.0.2)应用程序中使用ORM RedbeanHP(v3.3),但它的自动熔断器模型有问题。我不能让它链接到我的模型类。它并不是自动提取它们,而是使用“普通”豆子 我正在使用模块在ZF2中加载RedBean 我的模型类如下,位于文件夹Zend framework2 Zend Framework 2应用程序中的RedBeanPHP FUSE模型?,zend-framework2,redbean,Zend Framework2,Redbean,我试图在ZF2(v2.0.2)应用程序中使用ORM RedbeanHP(v3.3),但它的自动熔断器模型有问题。我不能让它链接到我的模型类。它并不是自动提取它们,而是使用“普通”豆子 我正在使用模块在ZF2中加载RedBean 我的模型类如下,位于文件夹\module\Check\src\Check\model\model中 <?php namespace Check\Model; use \RedBean_SimpleModel; class Model_Check extends
\module\Check\src\Check\model\model
中
<?php
namespace Check\Model;
use \RedBean_SimpleModel;
class Model_Check extends RedBean_SimpleModel
{
public $id;
public $type;
...
public function open()
{
}
public function toArray()
{
return array($this->id, $this->type);
}
返回的对象是RedBean\u OODBBean
我应该在findAll()
方法中将什么作为bean名称?我试过:
$checks = $rb->findAll('Model_Check');
$checks = $rb->findAll('Check/Model/Check');
$checks = $rb->findAll('Check/Model/Model_Check');
似乎没有什么能起作用。创建bean时,我也会遇到同样的问题
谢谢。这不起作用的原因是FUSE无法像通常那样自动找到bean的模型,因为在使用名称空间时会出现问题 您可以通过使用类映射文件并定义在其中使用的所有模型来解决此问题。确保您的模型位于全局命名空间中
更多信息和示例可以在我的博客上找到:这不起作用的原因是FUSE无法像通常那样自动找到bean的模型,因为在使用名称空间时会出现问题 您可以通过使用类映射文件并定义在其中使用的所有模型来解决此问题。确保您的模型位于全局命名空间中
更多信息和示例可以在我的博客上找到:我修改了RjhRedbean模块,如下所示:
1.创建了一个名为ModelFormatter的类 该类只返回与模型相关的适当名称空间,而不执行其他操作。 可以在配置中设置名称空间 2.在RjhRedbeanServiceFactory类中添加了
RedBean_ModelHelper::setModelFormatter($serviceLocator->get('ModelFormatter') 我修改了RjhRedbean模块如下:
1.创建了一个名为ModelFormatter的类 该类只返回与模型相关的适当名称空间,而不执行其他操作。 可以在配置中设置名称空间 2.在RjhRedbeanServiceFactory类中添加了
RedBean_ModelHelper::setModelFormatter($serviceLocator->get('ModelFormatter') 我想这是我需要解决的问题。如果你愿意帮助我工作,请发电子邮件给我richard@richardjh.org. 一旦我们有了解决方案,我们就可以在这里发布一个有意义的解决方案。在此期间,我将阅读自动熔断器模型。期待您的回复。我想这是我需要解决的问题。如果你愿意帮助我工作,请发电子邮件给我richard@richardjh.org. 一旦我们有了解决方案,我们就可以在这里发布一个有意义的解决方案。在此期间,我将阅读自动熔断器模型。期待您的来信,谢谢!它是有效的。。。我来自C#背景,所以全局名称空间对我来说有点异端,但它确实有效。。。谢谢你的帮助。@dsjt:我很高兴能帮你把它整理好。我正在努力让本模块在下被接受,因此我热衷于关注报道的问题。Gabor是Redbean的作者,他并不热衷于名称空间,这也许可以解释这里的情况,但如果您想将其放入位于以下位置的名称空间中,他确实会提供帮助:。谢谢你尝试RjhRedbean。谢谢!它是有效的。。。我来自C#背景,所以全局名称空间对我来说有点异端,但它确实有效。。。谢谢你的帮助。@dsjt:我很高兴能帮你把它整理好。我正在努力让本模块在下被接受,因此我热衷于关注报道的问题。Gabor是Redbean的作者,他并不热衷于名称空间,这也许可以解释这里的情况,但如果您想将其放入位于以下位置的名称空间中,他确实会提供帮助:。谢谢你尝试RjhRedbean。
$checks = $rb->findAll('Model_Check');
$checks = $rb->findAll('Check/Model/Check');
$checks = $rb->findAll('Check/Model/Model_Check');