问题标签 [ancestry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 带有 Ancestry Gem 的 Message_controller
为新手问题道歉,但是,我在消息控制器中收到以下错误,引用 message#new 操作:
ActiveRecord::RecordNotFound(找不到没有 ID 的用户):app/controllers/messages_controller.rb:18:in `new'
我正在尝试将祖先 gem 合并到我的 messages_controller 中,特别是当我尝试回复在用户收件箱 (index.html.erb) 中收到的消息时。我知道目前没有通过身份证,但是有人遇到过类似的问题吗?下面的代码:
show.html.erb(视图)
在 2014-09-27 15:41:18 -0400 开始 GET "/messages/new?parent_id=19" for 127.0.0.1 由 MessagesController#new 作为 HTML 参数处理:{"parent_id"=>"19"} 消息加载(0.1ms) SELECT "messages".* FROM "messages" WHERE "messages"."id" = ? LIMIT 1 [["id", 19]] Completed 404 Not Found in 11ms
ActiveRecord::RecordNotFound(找不到没有 ID 的用户):app/controllers/messages_controller.rb:18:in `new'
渲染 /Users/sikendersingh/.rvm/gems/ruby-2.1.2/gems/actionpack-4.1.4/lib/action_dispatch/middleware/templates/rescues/_source.erb (0.5ms) 渲染 /Users/sikendersingh/.rvm /gems/ruby-2.1.2/gems/actionpack-4.1.4/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (1.0ms) 渲染/Users/sikendersingh/.rvm/gems/ruby-2.1 .2/gems/actionpack-4.1.4/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.1ms) 渲染/Users/sikendersingh/.rvm/gems/ruby-2.1.2/gems/actionpack -4.1.4/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb 在救援/布局中(13.8 毫秒)
ruby-on-rails - Rails Ancestry gem:保存节点时确保父节点存在
我今天第一次尝试将 Ancestry gem作为内容管理系统的一部分,并希望能够创建节点并将它们手动连接到树中。换句话说,上下文并不规定任何新节点的父节点是什么,这与每个人都阅读过的许多线程讨论示例不同。
目前,当我尝试保存(创建或更新)具有不存在的 parent_id(“4”)的节点时,我收到错误:
我希望将引用不存在的父母的任何节点分配为没有父母。我怎么做?
这是trees_controller.rb的相关部分:
谢谢
json - Rails 4:尝试将 Ancestry 与 jstree 一起使用
我是 Rails 新手,并试图在浏览器中使用 Ancestry gem 中的 JSON 填充 jstree(请参阅https://github.com/stefankroes/ancestry)。JSON是中间人。我被卡住的地方是翻译 Ancestry 生成的 JSON(来自我的 Tree 模型):
这给了我很好的 JSON 如下(仅片段,为无意义的值道歉):
但是 jstree 插件需要 JSON 的特定格式,如下所示(来自http://www.jstree.com/docs/json/):
虽然源层次结构是完美的,但我需要将原始中的属性“名称”替换为输出中的“文本”,以及其他一些更改。
在我的脑海里,我觉得应该有一些优雅的东西(比如用于 XML 的 XSLT)将 JSON#1 转换为 JSON#2,但我找不到任何这样做的例子。
ruby-on-rails - Rails祖先协会
我有一个食谱应用程序,其中每个食谱都与许多成分相关联,并且使用祖先宝石组织成分。
因此,例如,“酱油”将是一种成分,而“龟甲万”将是“酱油”的子代。一个食谱可能需要“酱油”,或者专门叫出“龟甲万”的名字。
我希望能够按祖先搜索食谱,所以如果我搜索“酱油”,它也会找到孩子“龟甲万”的食谱。我怎样才能用 Rails 魔法做到这一点?
ruby-on-rails - rails 4:祖先不能正常工作?
尝试对一个对象执行 root_id 时遇到问题。类看起来像:
该数据库表看起来:
当我做:
我正进入(状态:4
当我输入:
我正进入(状态:[4, 5]
puts @p.name
给我Child 3-1
(这是正确的)
那么,问题出在哪里?我不应该进入第一种情况1
和第二种情况[1, 2, 4, 5]
吗?
ruby-on-rails - rails - 如何使用祖先制作嵌套路线
我有一个模型:
我正在使用ancestry
gem 来创建页面和子页面树,即页面可以有多个子页面,子页面也可以有多个子页面,以此类推到无穷大。
但我的问题是我不能做某事/page-1/page-1-2/page-1-2-1
。所有子页面都有一个 URL 是:/page-1-2
或/page-1-3-1
。
我的路线.rb:
如何制作嵌套网址?
谢谢!
ruby-on-rails - 如何在递归调用期间获取当前索引
我使用 gemancestry
来创建评论。
现在,我可以列出所有评论。
但我想将序列号推送到每条评论。
例如,如果有 3 条评论,则第一个评论标注 1,下一条标注标注 2,..
我不知道该怎么做?
显示.html.haml
帮手
each_with_index 不适用于递归
如果我有 4 条评论,我想为每条评论显示 0,1,2,3
但是 each_with_index 不能成功,因为它是一个递归调用。
注释
ruby-on-rails - 如何找到祖先节点的所有亲属?
我正在使用祖先 gem,我想要做的总是检测到当前帖子的所有相关帖子。
所以我的Post has_ancestry
.
在related posts
我看来,我有这个:
虽然这种方法很好,但它只检查一个用例(即,如果这篇文章有一个孩子)。我想要发生的事情是当这个人点击孩子时,在那个显示页面上它也应该将此帖子显示为相关帖子。
实际上它将是父母,但我不想做if post.has_parents?
, then if post.has_children?
,if post.has_siblings?
等。
理想情况下,我只想检测任何亲属,如果有亲属,我想遍历它们并以同质的方式显示它们。
我怎么做?
ruby-on-rails-4 - Rails 4 - 所有嵌套的多态注释都显示在每个页面上,而不是单个页面上
我正在学习 Rails 并尝试创建一个带有嵌套多态注释的站点。
我一直在关注本教程http://www.tweetegy.com/2013/04/create-nested-comments-in-rails-using-ancestry-gem/以及一些 RailsCasts(262-trees-with-ancestry 和154-多态关联)。
我已经成功地创建了嵌套的多态评论(当我检查 rails 控制台的每个评论时)。但是,我遇到的问题是输出评论。它们都显示在每个资源的显示页面上,而不是相关的显示页面上。换句话说,所有评论都显示在/videos/1 和videos/2 和课程/1 和课程/3 上(每个页面上都显示相同的评论)。
我怀疑我的问题出在 comments_helper.rb 或 /lib/commentable.rb 文件中,但是我没有运气调试问题。
路线
配置/路由.rb
控制器
应用程序/控制器/comments_controller.rb
应用程序/控制器/lessons_controller.rb
应用程序/控制器/videos_controller.rb
楷模
应用程序/模型/comment.rb
应用程序/模型/课程.rb
应用程序/模型/video.rb
应用程序/模型/user.rb
帮手
应用程序/帮助者/comments_helper.rb
库
/lib/commentable.rb
架构
意见
课程与观点 show.html.erb
app/views/comments/_form.html.erb
app/views/comments/_comment.html.erb
任何反馈或想法将不胜感激。谢谢 ;)
ruby-on-rails - 如何轻松检索祖先树的总深度?
Ancestry 有很多很棒的作用域和方法,包括node.depth
(它返回一个深度级别——即根节点为 0,子节点为 1,等等)。
它还具有一些允许您按深度遍历树的范围,例如node.subtree(:to_depth => 2)
.
但我没有看到任何表明如何计算/检索整个树的总深度的东西 - 从根到最后一个节点。
我唯一能想到的就是total_depth_cache
在我的模型上创建一个列,当添加一个新的孩子时,它会增加它。但是然后我必须编写逻辑来管理它(即,每当删除所有子级时,它都会递减 - 如果只有 1 级,但如果删除了具有 3 级子级的子级,则必须更新深度因此)。这很快就会变得非常复杂。
有没有更简单的方法来做到这一点?