webchimp/norm

您最喜欢的ORM和CRUD工具

2.1.8.3 2022-11-23 01:33 UTC

This package is auto-updated.

Last update: 2024-09-23 05:47:44 UTC


README

什么是NORM?

首先,如果你是喜欢缩写的程序员之一,NORM代表的是 NORM对象关系映射。那么NORM在这里意味着什么?好吧,NORM对象关系映射,傻瓜。

NORM究竟是什么?

与其他ORM技术一样,NORM使您能够在面向对象的编程语言中转换不兼容的类型系统中的数据。这些系统是哪些?我很高兴你问了!

一方面,我们有著名的、屡获殊荣的PHP(如果你想感到惊讶,可以查看“PHP是什么?”),另一方面我们有开源的关系型数据库管理系统MySQL。

简而言之,NORM所做的就是在Hummingbird内部和MySQL上方创建一个逻辑层,以便轻松创建和操作对象。这些对象允许您访问数据库,提供简单的API来存储和检索数据。

NORM将让您做那些酷炫的孩子用PHP和SQL数据库所做的酷炫事情,但它并不孤单...

进入...(等等)...CROOD

CROOD是我们对CRUD的愚蠢说法。那么CRUD是什么?CRUD代表 __CR__eate(创建)、__U__pdate(更新)、__D__elete(删除)。因此,以这种方式,CROOD让您能够从数据库中创建、更新和删除内容,还可以执行其他酷炫的事情,如根据条件初始化对象和获取元值。

如果NORM是一个程序员,CROOD将是他的/她的有帮助的堂兄弟。

我能有例子吗?

当然可以 😄

为了让NORM正常工作,我们创建了一系列既实用又有趣的规定。这些规定指定了如何定义和命名您的数据库表以及如何存储您的信息。

假设您想创建一个用于存储电影的系统。那么,根据NORM规则(稍后会更详细地介绍),您的表将看起来像这样

CREATE TABLE `movie` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `release_year` int(11) NOT NULL,
  PRIMARY KEY (`id`)
);

如果您在项目中设置了NORM,您将能够执行以下操作

$movie = new Movie();
$movie->name = 'Avengers: Infinity War: Part I';
$movie->release_year = 2018; //I'm so hyped about this movie
$movie->save();

哇!您只用 4行 代码就创建了《复仇者联盟3:无限战争》(suck it Marvel)。

我能有成年人的例子吗?

好的,聪明人。

让我们继续使用电影示例。

在这个示例中,您正在创建一个新的iMDB,因为为什么不呢?,并且您的网站的一个功能将是按发行年份筛选所有电影。对于您的过滤器,您可以执行类似以下操作

$movies_by_year = Movies::getAllByReleaseYear( 1985 );

砰!现在您有了我出生年份的所有美妙电影。

要求

  • Hummingbird Lite 2.0.3
  • Hummingbird MVC 1.3+