Yii提供了一套数据小部件 widgets ,这些小部件可以用于显示数据。 DetailView 小部件能够用于显示一条记录数据, ListView 和 DetailView 小部件显示的是单一 model 数据的详情。 它非常适合用常规格式显示一个模型(例如在一个表格的一行中显示模型的每个属性)。 这里说的模型可以是 yii\base\Model 或者其子类的一个实例,例如子类 active r
在 Pagination 和 Sorting 部分, 我们已经介绍了如何允许终端用户选择一个特定的数据页面,根据一些字段对它们进行展现与排序。 因为分页和排序数据的任务是很常见的,所以Yii提供了一组封装好的data provider类。 数据提供者是一个实现了 yii\data\DataProviderInterface 接口的类。 它主要用于获取分页和数据排序。它经常用在 data widge
在开发和维护一个数据库驱动的应用程序时, 数据库的结构会像代码一样不断演变。 例如,在开发应用程序的过程中,会增加一张新表且必须得加进来; 在应用程序被部署到生产环境后,需要建立一个索引来提高查询的性能等等。 因为一个数据库结构发生改变的时候源代码也经常会需要做出改变, Yii 提供了一个 数据库迁移 功能,该功能可以记录数据库的变化, 以便使数据库和源代码一起受版本控制。 如下的步骤向我们展示了
本章节将介绍如何创建一个从数据表 country 中读取国家数据并显示出来的页面。 为了实现这个目标,你将会配置一个数据库连接, 创建一个活动记录类, 并且创建一个操作及一个视图。 贯穿整个章节,你将会学到: 配置一个数据库连接 定义一个活动记录类 使用活动记录从数据库中查询数据 以分页方式在视图中显示数据 请注意,为了掌握本章你应该具备最基本的数据库知识和使用经验。 尤其是应该知道如何创建数据库
新建数据库 在本地新建一个数据库 demo 打开common/config/main-local.php 修改数据库配置 'components' => [ ... 'db' => [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbna
什么是数据序列化(Data Serialization)? 数据序列化(Data Serialization)用于将结构化数据转换为允许被分享或存储的格式,并且通过这种方式,数据的原始结构可以被恢复。在某些情况下,数据序列化的另一个次要目的是将序列化数据的尺寸最小化,从而最小化其对硬盘空间或带宽的要求。 Pickle Python 原生的数据序列化模块叫做 Pickle。 这里举个例子: impo
简介 Laravel提供了各种有用的工具,以便更容易地测试数据库驱动的应用程序。 首先, 你可以使用 assertDatabaseHas 辅助函数, 来断言数据库中是否存在与指定条件互相匹配的数据。 例如,如果我们想验证 users 数据表中是否存在 email 值为 sally@example.com的数据, 你可以安装以下方式来测试: public function testDatabase(
简介 Laravel 可以用 seed 类轻松地为数据库填充测试数据。所有的 seed 类都存放在 database/seeds 目录下。你可以任意为 seed 类命名,但是更应该遵守类似 UsersTableSeeder 的命名规范。Laravel 默认定义的一个 DatabaseSeeder 类。可以在这个类中使用 call 方法来运行其它的 seed 类从而控制数据填充的顺序。 编写 See
简介 迁移就像是数据库的版本控制, 允许团队简单轻松的编辑并共享应用的数据库表结构,迁移通常和 Laravel 的 数据库结构生成器配合使用,让你轻松地构建数据库结构。如果你曾经试过让同事手动在数据库结构中添加字段,那么数据库迁移可以让你不再需要做这样的事情。 Laravel 的 Schema 门面 对所有 Laravel 支持的数据库系统提供了创建和操作数据表的相应支持。 生成迁移 使用 Art
简介 Laravel 能使用原生 SQL、查询构造器 和 Eloquent ORM 在各种数据库后台与数据库进行非常简单的交互。当前 Laravel 支持四种数据库: MySQL Postgres SQLite SQL Server 配置 数据库的配置文件放置在 config/database.php 文件中,你可以在此定义所有的数据库连接,并指定默认使用的连接。此文件内提供了大部分 Larave
CodeIgniter 内置了速度快、功能强大的数据库类作为数据库的中间抽象层。数据库类支持传统架构以及 Active Record 架构。类中的数据库函数使用简单明了的语法。 数据库配置 入门:用法举例 连接数据库 查询 生成查询结果 查询辅助函数 Active Record 类 事务 表格元数据 字段元数据 自定义函数调用 查询缓存 数据库维护类 数据库工具类
不可变数据 ClojureScript 中默认采用不可变数据作为底层实现. cljs 当中实现了 Persistent Data Structure, 虽然是不可变数据, 但创建新数据一般会进行结构复用, 也就是说, 比如下面这个例子, b 在内部实现中就可以复用 a 的某些部分 (def a {:a 1 :b 2}) ; #'cljs.user/a (assoc a :c 3) ; {:a 1,
事务处理 索引
有一些部署需要维护一个跨越多个数据中心的数据管道。对此,我们推荐的方法是在每个拥有众多应用实例的数据中心内部署一个本地Kafka集群,在每个数据中心内只与本地的kafka集群进行交互,然后各集群之间通过镜像进行同步,(请参阅镜像制作工具了解怎么做到这一点)。. 这种部署模式允许数据中心充当一个独立的实体,并允许我们能够集中的管理和调节数据中心之间的复制。在这种部署模式下,即使数据中心间的链路不可用
通过Daos.migration实现表结构自动修改 在MainSetup.init方法内, Daos.createTableInPackage之后添加: Daos.migration(dao, User.class, true, false, false);