solutosoft/yii-settings The Shared Database used by all tenants

Yii Settings Extension

  1. Installation
  2. Configuration
  3. Usage
  4. Events

This extension provides support for persistent settings for Yii2.

Build Status Scrutinizer Code Quality Code Coverage Total Downloads Latest Stable Version

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist solutosoft/yii-settings

or add

"solutosoft/yii-settings": "*"

Configuration

To use the Setting Component, you need to configure the components array in your application configuration:

'components' => [
    'settings' => [
        'class' => 'Soluto\Settings\Settings',
    ],
],

Usage

$settings = Yii::$app->settings;

$settings->set('key');

$settings->set('section.key');

// Checking existence of setting
$settings->exists('key');

// Removes a setting
$settings->remove('key');

// Removes all settings
$settings->removeAll();

Events

You can use beforeExecute event to store extra values and apply extra conditions on command execution

<?php

'components' => [
    'settings' => [
        'class' => 'Soluto\Settings\Settings',
        'on beforeExecute' => function ($event) {
            $event->data = ['user_id' => Yii::$app->user->id];
        }
    ],
],

$settings = Yii::$app->settings;

//INSERT (`key`,`value`, `user_id`) INTO `setting` VALUES ('website', 'http://example.org', 1)
$settings->set('website', 'http://example.org');

//SELECT `value` FROM `setting` WHER (`settings`.`key` = 'website' and `settings`.`user_id` = 1)
$settings->get('website', 'http://example.org');

0 0
1 follower
153 downloads
Yii Version: 2.0
License: BSD-3-Clause
Category: Database
Developed by: leandrogehlen
Created on: May 14, 2019
Last updated: (not set)
Packagist Profile
Github Repository

Related Extensions