首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Rails 3,MySQL,树结构

Rails 3,MySQL,树结构
EN

Stack Overflow用户
提问于 2011-11-30 04:23:46
回答 1查看 526关注 0票数 0

我需要我的一个项目使用树结构。我找到了链接,并尝试使用它。我的桌子结构看上去如下:

代码语言:javascript
运行
复制
id    
user_id
parent_id
lft
rgt

当我尝试创建一个根时,我将这样做:

代码语言:javascript
运行
复制
save_tree = TreeStruct.create!(:user_id => @user.id)

然后我试着加入孩子:

代码语言:javascript
运行
复制
  save_tree = TreeStruct.create!(:user_id => @user.id)
  save_tree.move_to_child_of(params[:parent])

但是,在这一刻,我仍然一次又一次地收到错误,找不到TreeStruct和id=12。具有树结构的DB表的内容如下:

代码语言:javascript
运行
复制
+----+---------+-----------+------+------+---------------------+---------------------+
| id | user_id | parent_id | lft  | rgt  | created_at          | updated_at          |
+----+---------+-----------+------+------+---------------------+---------------------+
|  1 |      12 |      NULL |    1 |    2 | 2011-11-30 04:09:41 | 2011-11-30 04:09:41 |
+----+---------+-----------+------+------+---------------------+---------------------+

有人能帮我吗,拜托,我还做错了什么?我找不到正确的方法来使用这个宝石..。为什么需要值为12的ID?我觉得这不需要..。

百万次感谢你的每一次帮助!我已经第二天在和这个问题做斗争了,仍然找不到主要的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-30 04:27:39

我会重新评论使用“祖先”宝石--它在支持树结构方面非常出色。它将祖先列表存储在逗号分隔的字符串中,这使得查找非常有效。

http://railscasts.com/episodes/262-trees-with-ancestry

https://github.com/stefankroes/ancestry

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8321120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档