vitaly-alexandrovich / yii2-json-behavior
There is no license information available for the latest version (1.0.1) of this package.
json behavior
1.0.1
2019-05-11 14:36 UTC
Requires
- ext-json: *
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2025-03-12 07:47:40 UTC
README
Поведение (behavior) для Yii2 позволяет удобно взаимодействовать с данными из json строки одной модели (родительской) через использование другой (обертки для данных).
Установка
Выполните команду в теминале
> composer require "vitaly-alexandrovich/yii2-json-behavior"
или добавьте
"vitaly-alexandrovich/yii2-json-behavior": "~1.0.1"
в секцию require
файла composer.json
в Вашем проекте
Использование
// Создаем модель для данных class UserContacts extends \yii\base\Model { public $phone; public $email; public $skype; } // В существующей ActiveRecord модели используем поведение JsonBehavior class User extends \yii\db\ActiveRecord { public static function tableName() { return '{{%user}}'; } public function behaviors() { return [ // Указываем колонку с данными и модель для них \yii\behaviors\JsonBehavior::bind('contacts', UserContacts::class), ]; } }
Теперь мы можем читать данные:
$user = User::findOne(1); $user->contacts->phone; $user->contacts->email; $user->contacts->skype;
И менять их:
$user = User::findOne(1); $user->contacts->phone = '+7 (111) 222-33-44'; $user->contacts->email = 'user@examle.com'; $user->contacts->skype = 'user'; $user->save();