neemzy / redbean-service-provider

此包的最新版本(dev-master)没有可用的许可证信息。

RedBean ORM 服务提供程序,适用于 Silex 微框架

dev-master 2015-05-01 12:44 UTC

This package is auto-updated.

Last update: 2024-08-26 15:45:27 UTC


README

RedBean ORM 服务提供程序,适用于 Silex 微框架

用法

use Neemzy\Silex\Provider\RedBean\ServiceProvider as RedBeanServiceProvider;

$app = new Silex\Application();

$app->register(
    new RedBeanServiceProvider(),
    [
        'redbean.database' => $database,
        'redbean.username' => $username,
        'redbean.password' => $password,
        'redbean.namespace' => $namespace // optional
    ]
);

// RedBean is now available as an instance in $app['redbean']
$app['redbean']->freeze(true);

$app->run();

关于

目前,此项目主要是一个笨拙的包装器,旨在将 RedBean 作为实例而不是静态类(这在测试目的中可能很有用)提供。对这个实例的所有调用都将直接重定向到实际的 RedBean。它还简化了在模型中访问应用程序实例的过程(见下文)。如果您有任何改进此项目的想法,请随时贡献!

模型

此提供程序附带一个 Model 类,它扩展了 RedBean_SimpleModel,您可以选择从后者继承。这样做会使提供程序对每个请求的豆子执行 box() 操作,并将应用程序绑定到生成的模型实例。这意味着两件事

  • 您现在可以从模型的类内部访问 Silex 应用程序,通过请求 $this->app
  • 调用任何以前返回 RedBean_OODBBean 实例的方法现在直接返回适当的模型实例

如果您指定了 redbean.namespace 参数,您的模型类命名空间也将设置,而无需声明 REDBEAN_MODEL_PREFIX 常量。否则,模型类将没有任何前缀(甚至不是默认的 Model_)。