1

アプリケーションに Jstree を統合しました。そのテーブルの別の列を理解したいと思います。

CREATE TABLE IF NOT EXISTS `tree` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `parent_id` bigint(20) unsigned NOT NULL,
  `position` bigint(20) unsigned NOT NULL,
  `left` bigint(20) unsigned NOT NULL,
  `right` bigint(20) unsigned NOT NULL,
  `level` bigint(20) unsigned NOT NULL,
  `title` text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
  `type` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=13 ;

これは、サイトが提供するデフォルトのテーブルです。

ノードを追加したい場合、左、右、レベルの値を知るにはどうすればよいですか。

4

1 に答える 1

2

Adjacency listこれは の混合のように見えますnested sets

Nested setsツリーをリレーショナル データベースに格納するための優れた方法です。ここここを見なければならない原則を説明するのは難しいです。

使用するnested sets場合は必要ありませんparent_id。jstree は、使用する手法を自分で選択できるサンプル テーブルを提供したと思います。

ツリーをデータベースに保存するもう 1 つの方法は、Closure Tableです。それは私の個人的なお気に入りです。シンプルですが強力です。しかし、ネット上ではほとんど何も見つかりません。

于 2013-01-23T11:01:09.083 に答える