yii nestedsetbehavior - добавляем потомка к некоторому элементу

добавляем потомка к некоторому элементу - приведу фрагмент кода контроллера:

yii nestedsetbehavior - вывод всех "корней" - корневых узлов

это делается так:

$roots = ForumCategory::model()->roots()->findAll();

yii nestedsetbehavior удалить узел и всех потомков

пример таков:

$model  = ForumCategory::model()->findByPk($id); // пытаемся найти в базе сущ. модель
		// если не нашли по id
		if (!$model)
			throw new Exception('Bad id.');
		$model->deleteNode(); // удаляем узел, и всех его "потомков"

получить доступ к компонентам модуля = yii access module components

бросаем компонент в папку /components внутри папки модуля, никакого пространства имён для него можно не определять (как видите сам мой модуль как раз в пространстве имён) и просто определяем метод init() в осоновном скрипте модуля, который вернёт параметры конфигурации (мой модуль лежит в папке forum)

пример SQL для таблицы "категория форума" (nested sets) - для использвония нескольких деревьев

Forums:

CREATE TABLE `forumcategory` (
	`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
    `name` VARCHAR(255) DEFAULT NULL,
	`root` INT(10) UNSIGNED DEFAULT NULL,
  `lft` INT(10) UNSIGNED NOT NULL,
  `rgt` INT(10) UNSIGNED NOT NULL,
  `level` SMALLINT(5) UNSIGNED NOT NULL,
  PRIMARY KEY (`id`),
  KEY `root` (`root`),
  KEY `lft` (`lft`),
  KEY `rgt` (`rgt`),
  KEY `level` (`level`)
);

подобная структура может обрабатываться с помощью следующего расширения

Снупи & Chanel

Yii Nested Sets

Pages

Subscribe to fkn+antitotal RSS