跳转到主要内容

和“
实体
”有关的内容:

11.8 实践

Drupal8中的实体字段主要有这些:

boolean 布尔型 changed 修改日期 created 创建日期 decimal 数字 email 电子邮件 entity_reference 实体引用 float 浮点数 integer 整型 language 语言 map 映射 password 密码…

11.8 实践

1、按讲义操作练习

2、把留言板改造为实体,参考用户实体,实现注解里的每一项功能

3、留言板实体需支持可配置字段

4、留言板实体需支持字段验证

以上。

本节我们来创建一个名为"contact"的内容实体。可以通过drupalconsole来创建,如:

jerry@mac:~/Sites/drupal8 > drupal list | grep entity entity entity:debug Debug entities…

上文中我们创建了一个实体类型,但是对数据没有做验证。

实体验证跟表单验证不同,而是使用实体验证API来完成。

1、验证API

在任何类型化的数据对象上调用validate()方法实施验证,如:

$definition = DataDefinition::create('integer') ->…

11.4 实体API

1、实体检测 // 检测对象是否是一个实体的实例 if ($object instanceof \Drupal\Core\Entity\EntityInterface) { } // 内容实体实例检测 if ($entity instanceof \Drupal\Core\Entity\ContentEntityInterface){ } //…

处理器(Handlers)用于响应实体的一些操作。

实体处理器可以通过entity_type.manager service来访问。

Drupal8的实体处理器主要有:

1、存储(Storage)

存储处理器实现了EntityStorageInterface接口,…

配置实体类型和内容实体类型都是通过注解来定义的。

来看核心的一段代码,在core/modules/user/src/Entity/User.php

<?php namespace Drupal\user\Entity; use Drupal\Core\Entity\ContentEntityBase; use…
Drupal8实体

Drupal8常见的实体如下:

节点(node) 评论(comment) 分类术语(taxonomy) 用户(user) 配置实体(configuration)

每个实体包含若干方法:

如:

普遍使用的方法: $entity->id() 实体中指定的方法:$node->…
实体:

实体:

在drupal中实体是一个插件,位于模块的\src\Entity目录,他们都实现了如下接口:

Drupal\Core\Entity\EntityInterface

系统提供了很多的接口和默认实现

接口继承关系如下:…