mirror of
https://github.com/yiisoft/yii2.git
synced 2025-12-01 15:07:49 +08:00
Merge pull request #2057 from creocoder/auto-timestamp-field-renaming
AutoTimestamp field renaming
This commit is contained in:
@@ -17,8 +17,8 @@ use yii\web\IdentityInterface;
|
||||
* @property string $auth_key
|
||||
* @property integer $role
|
||||
* @property integer $status
|
||||
* @property integer $create_time
|
||||
* @property integer $update_time
|
||||
* @property integer $created_at
|
||||
* @property integer $updated_at
|
||||
*/
|
||||
class User extends ActiveRecord implements IdentityInterface
|
||||
{
|
||||
@@ -38,8 +38,8 @@ class User extends ActiveRecord implements IdentityInterface
|
||||
'timestamp' => [
|
||||
'class' => 'yii\behaviors\AutoTimestamp',
|
||||
'attributes' => [
|
||||
ActiveRecord::EVENT_BEFORE_INSERT => ['create_time', 'update_time'],
|
||||
ActiveRecord::EVENT_BEFORE_UPDATE => 'update_time',
|
||||
ActiveRecord::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'],
|
||||
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_at',
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
@@ -21,8 +21,8 @@ class m130524_201442_init extends \yii\db\Migration
|
||||
'role' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 10',
|
||||
|
||||
'status' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 10',
|
||||
'create_time' => Schema::TYPE_INTEGER.' NOT NULL',
|
||||
'update_time' => Schema::TYPE_INTEGER.' NOT NULL',
|
||||
'created_at' => Schema::TYPE_INTEGER.' NOT NULL',
|
||||
'updated_at' => Schema::TYPE_INTEGER.' NOT NULL',
|
||||
], $tableOptions);
|
||||
}
|
||||
|
||||
|
||||
@@ -415,7 +415,7 @@ and you may also join with sub-relations. For example,
|
||||
$orders = Order::find()->innerJoinWith([
|
||||
'books',
|
||||
'customer' => function ($query) {
|
||||
$query->where('tbl_customer.create_time > ' . (time() - 24 * 3600));
|
||||
$query->where('tbl_customer.created_at > ' . (time() - 24 * 3600));
|
||||
}
|
||||
])->all();
|
||||
// join with sub-relations: join with books and books' authors
|
||||
|
||||
@@ -23,8 +23,8 @@ class User extends ActiveRecord
|
||||
'timestamp' => [
|
||||
'class' => 'yii\behaviors\AutoTimestamp',
|
||||
'attributes' => [
|
||||
ActiveRecord::EVENT_BEFORE_INSERT => ['create_time', 'update_time'],
|
||||
ActiveRecord::EVENT_BEFORE_UPDATE => 'update_time',
|
||||
ActiveRecord::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'],
|
||||
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_at',
|
||||
],
|
||||
],
|
||||
];
|
||||
@@ -39,7 +39,7 @@ Creating your own behaviors
|
||||
|
||||
[[NEEDS UPDATING FOR Yii 2]]
|
||||
|
||||
To create your own behavior, you must define a class that implements the `IBehavior` interface. This can be accomplished by extending `CBehavior`. More specifically, you can extend `CModelBehavior` or `CActiveRecordBehavior` for behaviors to be used specifically with models or with Active Record models.
|
||||
To create your own behavior, you must define a class that implements the `IBehavior` interface. This can be accomplished by extending `CBehavior`. More specifically, you can extend `CModelBehavior` or `CActiveRecordBehavior` for behaviors to be used specifically with models or with Active Record models.
|
||||
|
||||
```php
|
||||
class MyBehavior extends CActiveRecordBehavior
|
||||
@@ -87,4 +87,4 @@ class MyBehavior extends CActiveRecordBehavior
|
||||
// Use $model->$attr
|
||||
}
|
||||
}
|
||||
```
|
||||
```
|
||||
|
||||
@@ -238,7 +238,7 @@ Using the same `attributes` property you can massively assign data from associat
|
||||
```php
|
||||
$attributes = [
|
||||
'title' => 'Model attributes',
|
||||
'create_time' => time(),
|
||||
'created_at' => time(),
|
||||
];
|
||||
$post->attributes = $attributes;
|
||||
```
|
||||
|
||||
@@ -95,6 +95,7 @@ Yii Framework 2 Change Log
|
||||
- Chg #1821: Changed default values for yii\db\Connection username and password to null (cebe)
|
||||
- Chg #1844: `Response::sendFile()` and other file sending methods will not send the response (qiangxue)
|
||||
- Chg #1852: DbConnection::tablePrefix default value now 'tbl_' (creocoder)
|
||||
- Chg #2057: AutoTimestamp attributes defaults changed from `create_time` and `update_time` to `created_at` and `updated_at` (creocoder)
|
||||
- Chg: Renamed `yii\jui\Widget::clientEventsMap` to `clientEventMap` (qiangxue)
|
||||
- Chg: Renamed `ActiveRecord::getPopulatedRelations()` to `getRelatedRecords()` (qiangxue)
|
||||
- Chg: Renamed `attributeName` and `className` to `targetAttribute` and `targetClass` for `UniqueValidator` and `ExistValidator` (qiangxue)
|
||||
|
||||
@@ -27,8 +27,8 @@ use yii\db\ActiveRecord;
|
||||
* }
|
||||
* ~~~
|
||||
*
|
||||
* By default, AutoTimestamp will fill the `create_time` attribute with the current timestamp
|
||||
* when the associated AR object is being inserted; it will fill the `update_time` attribute
|
||||
* By default, AutoTimestamp will fill the `created_at` attribute with the current timestamp
|
||||
* when the associated AR object is being inserted; it will fill the `updated_at` attribute
|
||||
* with the timestamp when the AR object is being updated.
|
||||
*
|
||||
* @author Qiang Xue <qiang.xue@gmail.com>
|
||||
@@ -41,12 +41,12 @@ class AutoTimestamp extends Behavior
|
||||
* The array keys are the ActiveRecord events upon which the attributes are to be filled with timestamps,
|
||||
* and the array values are the corresponding attribute(s) to be updated. You can use a string to represent
|
||||
* a single attribute, or an array to represent a list of attributes.
|
||||
* The default setting is to update the `create_time` attribute upon AR insertion,
|
||||
* and update the `update_time` attribute upon AR updating.
|
||||
* The default setting is to update the `created_at` attribute upon AR insertion,
|
||||
* and update the `updated_at` attribute upon AR updating.
|
||||
*/
|
||||
public $attributes = [
|
||||
ActiveRecord::EVENT_BEFORE_INSERT => 'create_time',
|
||||
ActiveRecord::EVENT_BEFORE_UPDATE => 'update_time',
|
||||
ActiveRecord::EVENT_BEFORE_INSERT => 'created_at',
|
||||
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_at',
|
||||
];
|
||||
/**
|
||||
* @var \Closure|Expression The expression that will be used for generating the timestamp.
|
||||
|
||||
@@ -145,7 +145,7 @@ class Sort extends Object
|
||||
* ~~~
|
||||
* [
|
||||
* 'name' => SORT_ASC,
|
||||
* 'create_time' => SORT_DESC,
|
||||
* 'created_at' => SORT_DESC,
|
||||
* ]
|
||||
* ~~~
|
||||
*
|
||||
|
||||
@@ -33,7 +33,7 @@ class BaseArrayHelper
|
||||
* 'id',
|
||||
* 'title',
|
||||
* // the key name in array result => property name
|
||||
* 'createTime' => 'create_time',
|
||||
* 'createTime' => 'created_at',
|
||||
* // the key name in array result => anonymous function
|
||||
* 'length' => function ($post) {
|
||||
* return strlen($post->content);
|
||||
|
||||
@@ -7,7 +7,7 @@ namespace yiiunit\data\ar;
|
||||
*
|
||||
* @property integer $id
|
||||
* @property integer $customer_id
|
||||
* @property integer $create_time
|
||||
* @property integer $created_at
|
||||
* @property string $total
|
||||
*/
|
||||
class Order extends ActiveRecord
|
||||
@@ -68,7 +68,7 @@ class Order extends ActiveRecord
|
||||
public function beforeSave($insert)
|
||||
{
|
||||
if (parent::beforeSave($insert)) {
|
||||
$this->create_time = time();
|
||||
$this->created_at = time();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -32,7 +32,7 @@ class Customer extends ActiveRecord
|
||||
|
||||
public function getOrders()
|
||||
{
|
||||
return $this->hasMany(Order::className(), array('customer_id' => 'id'))->orderBy('create_time');
|
||||
return $this->hasMany(Order::className(), array('customer_id' => 'id'))->orderBy('created_at');
|
||||
}
|
||||
|
||||
public static function active($query)
|
||||
|
||||
@@ -8,7 +8,7 @@ use yii\elasticsearch\Command;
|
||||
*
|
||||
* @property integer $id
|
||||
* @property integer $customer_id
|
||||
* @property integer $create_time
|
||||
* @property integer $created_at
|
||||
* @property string $total
|
||||
*/
|
||||
class Order extends ActiveRecord
|
||||
@@ -20,7 +20,7 @@ class Order extends ActiveRecord
|
||||
|
||||
public function attributes()
|
||||
{
|
||||
return ['id', 'customer_id', 'create_time', 'total'];
|
||||
return ['id', 'customer_id', 'created_at', 'total'];
|
||||
}
|
||||
|
||||
public function getCustomer()
|
||||
@@ -65,7 +65,7 @@ class Order extends ActiveRecord
|
||||
public function beforeSave($insert)
|
||||
{
|
||||
if (parent::beforeSave($insert)) {
|
||||
// $this->create_time = time();
|
||||
// $this->created_at = time();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
@@ -84,7 +84,7 @@ class Order extends ActiveRecord
|
||||
"_id" => ["path" => "id", "index" => "not_analyzed", "store" => "yes"],
|
||||
"properties" => [
|
||||
"customer_id" => ["type" => "integer"],
|
||||
// "create_time" => ["type" => "string", "index" => "not_analyzed"],
|
||||
// "created_at" => ["type" => "string", "index" => "not_analyzed"],
|
||||
"total" => ["type" => "integer"],
|
||||
]
|
||||
]
|
||||
|
||||
@@ -6,7 +6,7 @@ class Order extends ActiveRecord
|
||||
{
|
||||
public function attributes()
|
||||
{
|
||||
return ['id', 'customer_id', 'create_time', 'total'];
|
||||
return ['id', 'customer_id', 'created_at', 'total'];
|
||||
}
|
||||
|
||||
public function getCustomer()
|
||||
@@ -53,10 +53,10 @@ class Order extends ActiveRecord
|
||||
public function beforeSave($insert)
|
||||
{
|
||||
if (parent::beforeSave($insert)) {
|
||||
$this->create_time = time();
|
||||
$this->created_at = time();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ CREATE TABLE `tbl_item` (
|
||||
CREATE TABLE `tbl_order` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`customer_id` int(11) NOT NULL,
|
||||
`create_time` int(11) NOT NULL,
|
||||
`created_at` int(11) NOT NULL,
|
||||
`total` decimal(10,0) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
CONSTRAINT `FK_order_customer_id` FOREIGN KEY (`customer_id`) REFERENCES `tbl_customer` (`id`) ON DELETE CASCADE
|
||||
@@ -107,9 +107,9 @@ INSERT INTO tbl_item (name, category_id) VALUES ('Ice Age', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Toy Story', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Cars', 2);
|
||||
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325502201, 40.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325502201, 40.0);
|
||||
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 1, 1, 30.0);
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 2, 2, 40.0);
|
||||
|
||||
@@ -37,7 +37,7 @@ CREATE TABLE [dbo].[tbl_item] (
|
||||
CREATE TABLE [dbo].[tbl_order] (
|
||||
[id] [int] IDENTITY(1,1) NOT NULL,
|
||||
[customer_id] [int] NOT NULL,
|
||||
[create_time] [int] NOT NULL,
|
||||
[created_at] [int] NOT NULL,
|
||||
[total] [decimal](10,0) NOT NULL,
|
||||
CONSTRAINT [PK_order] PRIMARY KEY CLUSTERED (
|
||||
[id] ASC
|
||||
@@ -92,9 +92,9 @@ INSERT INTO [dbo].[tbl_item] ([name], [category_id]) VALUES ('Ice Age', 2);
|
||||
INSERT INTO [dbo].[tbl_item] ([name], [category_id]) VALUES ('Toy Story', 2);
|
||||
INSERT INTO [dbo].[tbl_item] ([name], [category_id]) VALUES ('Cars', 2);
|
||||
|
||||
INSERT INTO [dbo].[tbl_order] ([customer_id], [create_time], [total]) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO [dbo].[tbl_order] ([customer_id], [create_time], [total]) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO [dbo].[tbl_order] ([customer_id], [create_time], [total]) VALUES (2, 1325502201, 40.0);
|
||||
INSERT INTO [dbo].[tbl_order] ([customer_id], [created_at], [total]) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO [dbo].[tbl_order] ([customer_id], [created_at], [total]) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO [dbo].[tbl_order] ([customer_id], [created_at], [total]) VALUES (2, 1325502201, 40.0);
|
||||
|
||||
INSERT INTO [dbo].[tbl_order_item] ([order_id], [item_id], [quantity], [subtotal]) VALUES (1, 1, 1, 30.0);
|
||||
INSERT INTO [dbo].[tbl_order_item] ([order_id], [item_id], [quantity], [subtotal]) VALUES (1, 2, 2, 40.0);
|
||||
|
||||
@@ -47,7 +47,7 @@ CREATE TABLE `tbl_item` (
|
||||
CREATE TABLE `tbl_order` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`customer_id` int(11) NOT NULL,
|
||||
`create_time` int(11) NOT NULL,
|
||||
`created_at` int(11) NOT NULL,
|
||||
`total` decimal(10,0) NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
CONSTRAINT `FK_order_customer_id` FOREIGN KEY (`customer_id`) REFERENCES `tbl_customer` (`id`) ON DELETE CASCADE
|
||||
@@ -109,9 +109,9 @@ INSERT INTO tbl_item (name, category_id) VALUES ('Ice Age', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Toy Story', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Cars', 2);
|
||||
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325502201, 40.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325502201, 40.0);
|
||||
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 1, 1, 30.0);
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 2, 2, 40.0);
|
||||
|
||||
@@ -43,7 +43,7 @@ CREATE TABLE tbl_item (
|
||||
CREATE TABLE tbl_order (
|
||||
id serial not null primary key,
|
||||
customer_id integer NOT NULL references tbl_customer(id) on UPDATE CASCADE on DELETE CASCADE,
|
||||
create_time integer NOT NULL,
|
||||
created_at integer NOT NULL,
|
||||
total decimal(10,0) NOT NULL
|
||||
);
|
||||
|
||||
@@ -92,9 +92,9 @@ INSERT INTO tbl_item (name, category_id) VALUES ('Ice Age', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Toy Story', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Cars', 2);
|
||||
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325502201, 40.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325502201, 40.0);
|
||||
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 1, 1, 30.0);
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 2, 2, 40.0);
|
||||
@@ -130,4 +130,4 @@ INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (2, 'ref_to_2', 2);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (3, 'ref_to_3', 3);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (4, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (5, 'ref_to_4', 4);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (6, 'ref_to_5', 5);
|
||||
INSERT INTO tbl_validator_ref (id, a_field, ref) VALUES (6, 'ref_to_5', 5);
|
||||
|
||||
@@ -37,7 +37,7 @@ CREATE TABLE tbl_item (
|
||||
CREATE TABLE tbl_order (
|
||||
id INTEGER NOT NULL,
|
||||
customer_id INTEGER NOT NULL,
|
||||
create_time INTEGER NOT NULL,
|
||||
created_at INTEGER NOT NULL,
|
||||
total decimal(10,0) NOT NULL,
|
||||
PRIMARY KEY (id)
|
||||
);
|
||||
@@ -94,9 +94,9 @@ INSERT INTO tbl_item (name, category_id) VALUES ('Ice Age', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Toy Story', 2);
|
||||
INSERT INTO tbl_item (name, category_id) VALUES ('Cars', 2);
|
||||
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, create_time, total) VALUES (2, 1325502201, 40.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (1, 1325282384, 110.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325334482, 33.0);
|
||||
INSERT INTO tbl_order (customer_id, created_at, total) VALUES (2, 1325502201, 40.0);
|
||||
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 1, 1, 30.0);
|
||||
INSERT INTO tbl_order_item (order_id, item_id, quantity, subtotal) VALUES (1, 2, 2, 40.0);
|
||||
|
||||
@@ -100,15 +100,15 @@ class ActiveRecordTest extends ElasticSearchTestCase
|
||||
|
||||
$order = new Order();
|
||||
$order->id = 1;
|
||||
$order->setAttributes(['customer_id' => 1, 'create_time' => 1325282384, 'total' => 110.0], false);
|
||||
$order->setAttributes(['customer_id' => 1, 'created_at' => 1325282384, 'total' => 110.0], false);
|
||||
$order->save(false);
|
||||
$order = new Order();
|
||||
$order->id = 2;
|
||||
$order->setAttributes(['customer_id' => 2, 'create_time' => 1325334482, 'total' => 33.0], false);
|
||||
$order->setAttributes(['customer_id' => 2, 'created_at' => 1325334482, 'total' => 33.0], false);
|
||||
$order->save(false);
|
||||
$order = new Order();
|
||||
$order->id = 3;
|
||||
$order->setAttributes(['customer_id' => 2, 'create_time' => 1325502201, 'total' => 40.0], false);
|
||||
$order->setAttributes(['customer_id' => 2, 'created_at' => 1325502201, 'total' => 40.0], false);
|
||||
$order->save(false);
|
||||
|
||||
$orderItem = new OrderItem();
|
||||
@@ -239,14 +239,14 @@ class ActiveRecordTest extends ElasticSearchTestCase
|
||||
$orders = $customer->orders;
|
||||
$this->assertEquals(2, count($orders));
|
||||
|
||||
$orders = $customer->getOrders()->where(['between', 'create_time', 1325334000, 1325400000])->all();
|
||||
$orders = $customer->getOrders()->where(['between', 'created_at', 1325334000, 1325400000])->all();
|
||||
$this->assertEquals(1, count($orders));
|
||||
$this->assertEquals(2, $orders[0]->id);
|
||||
}
|
||||
|
||||
public function testFindEagerViaRelation()
|
||||
{
|
||||
$orders = Order::find()->with('items')->orderBy('create_time')->all();
|
||||
$orders = Order::find()->with('items')->orderBy('created_at')->all();
|
||||
$this->assertEquals(3, count($orders));
|
||||
$order = $orders[0];
|
||||
$this->assertEquals(1, $order->id);
|
||||
@@ -529,4 +529,4 @@ class ActiveRecordTest extends ElasticSearchTestCase
|
||||
|
||||
|
||||
// TODO test AR with not mapped PK
|
||||
}
|
||||
}
|
||||
|
||||
@@ -63,13 +63,13 @@ class ActiveRecordTest extends RedisTestCase
|
||||
$item->save(false);
|
||||
|
||||
$order = new Order();
|
||||
$order->setAttributes(['customer_id' => 1, 'create_time' => 1325282384, 'total' => 110.0], false);
|
||||
$order->setAttributes(['customer_id' => 1, 'created_at' => 1325282384, 'total' => 110.0], false);
|
||||
$order->save(false);
|
||||
$order = new Order();
|
||||
$order->setAttributes(['customer_id' => 2, 'create_time' => 1325334482, 'total' => 33.0], false);
|
||||
$order->setAttributes(['customer_id' => 2, 'created_at' => 1325334482, 'total' => 33.0], false);
|
||||
$order->save(false);
|
||||
$order = new Order();
|
||||
$order->setAttributes(['customer_id' => 2, 'create_time' => 1325502201, 'total' => 40.0], false);
|
||||
$order->setAttributes(['customer_id' => 2, 'created_at' => 1325502201, 'total' => 40.0], false);
|
||||
$order->save(false);
|
||||
|
||||
$orderItem = new OrderItem();
|
||||
@@ -228,4 +228,4 @@ class ActiveRecordTest extends RedisTestCase
|
||||
$this->assertNull(OrderItem::find($pk));
|
||||
$this->assertNotNull(OrderItem::find(['order_id' => 2, 'item_id' => 10]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -502,7 +502,7 @@ trait ActiveRecordTestTrait
|
||||
|
||||
/*
|
||||
Item (name, category_id)
|
||||
Order (customer_id, create_time, total)
|
||||
Order (customer_id, created_at, total)
|
||||
OrderItem (order_id, item_id, quantity, subtotal)
|
||||
|
||||
Result should be the following:
|
||||
@@ -530,7 +530,7 @@ trait ActiveRecordTestTrait
|
||||
- itemsInOrder:
|
||||
Item 3: 'Ice Age', 2
|
||||
*/
|
||||
$orders = $this->callOrderFind()->with('itemsInOrder1')->orderBy('create_time')->all();
|
||||
$orders = $this->callOrderFind()->with('itemsInOrder1')->orderBy('created_at')->all();
|
||||
$this->assertEquals(3, count($orders));
|
||||
|
||||
$order = $orders[0];
|
||||
@@ -558,7 +558,7 @@ trait ActiveRecordTestTrait
|
||||
// different order in via table
|
||||
public function testFindEagerViaRelationPreserveOrderB()
|
||||
{
|
||||
$orders = $this->callOrderFind()->with('itemsInOrder2')->orderBy('create_time')->all();
|
||||
$orders = $this->callOrderFind()->with('itemsInOrder2')->orderBy('created_at')->all();
|
||||
$this->assertEquals(3, count($orders));
|
||||
|
||||
$order = $orders[0];
|
||||
|
||||
@@ -41,8 +41,8 @@ class AutoTimestampTest extends TestCase
|
||||
|
||||
$columns = [
|
||||
'id' => 'pk',
|
||||
'create_time' => 'integer',
|
||||
'update_time' => 'integer',
|
||||
'created_at' => 'integer',
|
||||
'updated_at' => 'integer',
|
||||
];
|
||||
Yii::$app->getDb()->createCommand()->createTable('test_auto_timestamp', $columns)->execute();
|
||||
}
|
||||
@@ -62,8 +62,8 @@ class AutoTimestampTest extends TestCase
|
||||
$model = new ActiveRecordAutoTimestamp();
|
||||
$model->save(false);
|
||||
|
||||
$this->assertTrue($model->create_time >= $currentTime);
|
||||
$this->assertTrue($model->update_time >= $currentTime);
|
||||
$this->assertTrue($model->created_at >= $currentTime);
|
||||
$this->assertTrue($model->updated_at >= $currentTime);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -78,12 +78,12 @@ class AutoTimestampTest extends TestCase
|
||||
|
||||
$enforcedTime = $currentTime - 100;
|
||||
|
||||
$model->create_time = $enforcedTime;
|
||||
$model->update_time = $enforcedTime;
|
||||
$model->created_at = $enforcedTime;
|
||||
$model->updated_at = $enforcedTime;
|
||||
$model->save(false);
|
||||
|
||||
$this->assertEquals($enforcedTime, $model->create_time, 'Create time has been set on update!');
|
||||
$this->assertTrue($model->update_time >= $currentTime, 'Update time has NOT been set on update!');
|
||||
$this->assertEquals($enforcedTime, $model->created_at, 'Create time has been set on update!');
|
||||
$this->assertTrue($model->updated_at >= $currentTime, 'Update time has NOT been set on update!');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,8 +91,8 @@ class AutoTimestampTest extends TestCase
|
||||
* Test Active Record class with [[AutoTimestamp]] behavior attached.
|
||||
*
|
||||
* @property integer $id
|
||||
* @property integer $create_time
|
||||
* @property integer $update_time
|
||||
* @property integer $created_at
|
||||
* @property integer $updated_at
|
||||
*/
|
||||
class ActiveRecordAutoTimestamp extends ActiveRecord
|
||||
{
|
||||
@@ -102,8 +102,8 @@ class ActiveRecordAutoTimestamp extends ActiveRecord
|
||||
'timestamp' => [
|
||||
'class' => AutoTimestamp::className(),
|
||||
'attributes' => [
|
||||
static::EVENT_BEFORE_INSERT => ['create_time', 'update_time'],
|
||||
static::EVENT_BEFORE_UPDATE => 'update_time',
|
||||
static::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'],
|
||||
static::EVENT_BEFORE_UPDATE => 'updated_at',
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user