Я использую этот плагин для создания своей древовидной структуры. У меня есть небольшая проблема с моей схемой БД - я не уверен, что она работает хорошо.
Моя таблица БД выглядит так:
+----+---------+-----------+------+------+---------------------+---------------------+
| id | user_id | parent_id | lft | rgt | created_at | updated_at |
+----+---------+-----------+------+------+---------------------+---------------------+
| 1 | 2 | NULL | 1 | 2 | 2011-11-25 18:48:14 | 2011-11-25 18:48:14 |
| 2 | 3 | 2 | 3 | 16 | 2011-11-25 18:49:07 | 2011-11-25 18:49:07 |
| 3 | 4 | 2 | 4 | 7 | 2011-11-25 18:50:56 | 2011-11-25 18:50:56 |
| 4 | 5 | 3 | 5 | 6 | 2011-11-25 18:56:37 | 2011-11-25 18:56:37 |
| 5 | 7 | 2 | 8 | 9 | 2011-11-28 08:44:11 | 2011-11-28 08:44:11 |
| 6 | 8 | 2 | 10 | 11 | 2011-11-28 10:56:26 | 2011-11-28 10:56:26 |
| 7 | 9 | 2 | 12 | 13 | 2011-11-28 16:57:54 | 2011-11-28 16:57:54 |
| 8 | 10 | 2 | 14 | 15 | 2011-11-29 14:01:45 | 2011-11-29 14:01:45 |
+----+---------+-----------+------+------+---------------------+---------------------+
Хотя корневой элемент (с ID = 1) автоматически обновит значения lft и rgt , но в моем случае нет. Я до сих пор не знаю, что я делаю не так.
Вот моя процедура создания предметов:
-создание узла (корень):
save_tree = TreeStruct.create!(:user_id => @user.id)
- создание элемента под корневым элементом:
save_tree = TreeStruct.create!(:user_id => @user.id)
save_tree.move_to_child_of(params[:parent])
В форме, где я создаю элементы, есть вход скрытый , и этот вход имеет значение (ID) корневого элемента.
Моя проблема - что я делаю неправильно, когда у меня все еще есть значение lft = 1 и rgt = 2 в таблице? Не должно быть значений там 1 и 16 ?
Миллион раз спасибо за любую помощь, я действительно отчаялся от этой проблемы.