尊重/data

持久化简化

0.2.2 2015-01-05 16:03 UTC

This package is auto-updated.

Last update: 2024-08-24 04:09:05 UTC


README

Build Status Latest Version Total Downloads License

Respect\Data 允许您使用单一稳定的 API 实现多个、协作的数据库映射。您甚至可以在单个模型中混合 MySQL 和 MongoDB 数据库。

此项目正在开发中

安装

该软件包可在 Packagist 上获取。您可以使用 Composer 进行安装。

composer require respect/data

兼容 PSR-0 和 PSR-2。

集合

Respect\Data 的主要组件是集合。它们定义了如何在您的应用程序中组织数据。

以下示例中,我们声明了两个集合来处理新闻门户

$articles = Collection::article();
$authors = Collection::article()->author();

后端

目前,Respect\Data 有两个计划中的后端实现:用于关系数据库(如 MySQL 和 SQLite)的 Respect\Relational 和用于 MongoDB 数据库的 Respect\Structural。这些是使用 Respect\Data 模型不同的映射器。

以下是如何从作者 5 中检索所有作者的示例

$mapper->article->author[5]->fetchAll();
  • 在关系型后端,Respect 会自动构建一个类似于 SELECT * FROM article INNER JOIN author ON article.author_id = author.id WHERE author.id = 5 的查询。
  • 在 MongoDB 后端,生成的内部查询可能类似于 db.article.find({"author.id":5}, {"author":1});

特性

除了从数据库获取数据外,Respect\Data 预计还将处理以下几种情况

  • 将数据持久化到集合中
  • 在查询中使用后端原生的额外命令
  • 声明大型集合声明的快捷方式
  • 处理复合映射器后端

许可证

请参阅 LICENSE 文件。