diff --git a/framework/behaviors/AttributeBehavior.php b/framework/behaviors/AttributeBehavior.php index 1ec315d..3f2d007 100644 --- a/framework/behaviors/AttributeBehavior.php +++ b/framework/behaviors/AttributeBehavior.php @@ -93,7 +93,10 @@ class AttributeBehavior extends Behavior $attributes = (array) $this->attributes[$event->name]; $value = $this->getValue($event); foreach ($attributes as $attribute) { - $this->owner->$attribute = $value; + // ignore attribute names which are not string (e.g. when set by TimestampBehavior::updatedAtAttribute) + if (is_string($attribute)) { + $this->owner->$attribute = $value; + } } } } diff --git a/framework/behaviors/BlameableBehavior.php b/framework/behaviors/BlameableBehavior.php index 1b23577..791a077 100644 --- a/framework/behaviors/BlameableBehavior.php +++ b/framework/behaviors/BlameableBehavior.php @@ -54,10 +54,12 @@ class BlameableBehavior extends AttributeBehavior { /** * @var string the attribute that will receive current user ID value + * Set this property to be null if you do not want to record the creator ID. */ public $createdByAttribute = 'created_by'; /** * @var string the attribute that will receive current user ID value + * Set this property to be null if you do not want to record the updater ID. */ public $updatedByAttribute = 'updated_by'; /** diff --git a/framework/behaviors/TimestampBehavior.php b/framework/behaviors/TimestampBehavior.php index 9dc5348..8651d90 100644 --- a/framework/behaviors/TimestampBehavior.php +++ b/framework/behaviors/TimestampBehavior.php @@ -64,10 +64,12 @@ class TimestampBehavior extends AttributeBehavior { /** * @var string the attribute that will receive timestamp value + * Set this property to be null if you do not want to record the creation time. */ public $createdAtAttribute = 'created_at'; /** - * @var string the attribute that will receive timestamp value + * @var string the attribute that will receive timestamp value. + * Set this property to be null if you do not want to record the update time. */ public $updatedAtAttribute = 'updated_at'; /**