1
0
Fork 0
mirror of https://github.com/Oreolek/yii2-nested-sets.git synced 2024-06-02 08:08:09 +03:00
Go to file
2015-01-04 10:06:13 +03:00
tests Removed excess check from NestedSetBehavior::beforeInsert 2015-01-04 10:06:13 +03:00
.gitignore Updated .gitignore 2015-01-02 20:21:37 +03:00
.scrutinizer.yml Added .scrutinizer.yml 2015-01-02 21:08:10 +03:00
.travis.yml Updated .travis.yml 2015-01-02 21:21:59 +03:00
composer.json Nested sets behavior complete overhaul for Yii 2 framework release version 2015-01-01 09:08:05 +03:00
composer.lock Added composer.lock as part of repository 2015-01-02 20:22:10 +03:00
LICENSE.md Updated LICENSE.md 2015-01-02 07:22:45 +03:00
NestedSetsBehavior.php Removed excess check from NestedSetBehavior::beforeInsert 2015-01-04 10:06:13 +03:00
NestedSetsQueryBehavior.php NestedSetsQueryBehavior::leaf renamed to NestedSetsQueryBehavior::leaves 2015-01-03 21:16:50 +03:00
phpunit.xml.dist Base for unit tests added 2015-01-01 09:10:10 +03:00
README.md Fixed code coverage badge inside README.md 2015-01-03 13:13:24 +03:00

Nested Sets Behavior for Yii 2

PayPal Donate Build Status Code Coverage

A modern nested sets behavior for the Yii framework utilizing the Modified Preorder Tree Traversal algorithm.

Installation

The preferred way to install this extension is through composer.

Either run

$ php composer.phar require creocoder/yii2-nested-sets:dev-master

or add

"creocoder/yii2-nested-sets": "dev-master"

to the require section of your composer.json file.

Configuring

First you need to configure model as follows:

use creocoder\nestedsets\NestedSetsBehavior;

class Tree extends \yii\db\ActiveRecord
{
    public function behaviors() {
        return [
            NestedSetsBehavior::className(),
        ];
    }

    public function transactions()
    {
        return [
            self::SCENARIO_DEFAULT => self::OP_ALL,
        ];
    }

    public static function find()
    {
        return new TreeQuery(get_called_class());
    }
}

Second you need to configure query model as follows:

use creocoder\nestedsets\NestedSetsQueryBehavior;

class TreeQuery extends \yii\db\ActiveQuery
{
    public function behaviors() {
        return [
            NestedSetsQueryBehavior::className(),
        ];
    }
}

Usage

TBD.