问题标签 [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.

0 投票
1 回答
1002 浏览

ruby-on-rails - “method_missing”:未定义的局部变量或方法“has_ancestry”

我正在关注本教程(http://www.tweetegy.com/2013/04/create-nested-comments-in-rails-using-ancestry-gem/),了解如何为嵌套评论设置 Ancestry gem。当我在普通的 Rails 应用程序上运行本教程时,它工作正常。当我尝试将评论系统分离到引擎中时,我的问题就出现了。以下是我拥有的模型:

在发动机

在主应用程序中

如果我删除has_ancestry,我可以访问评论就好了。就像我在第一个应用程序中所做的那样,我已经按照教程进行操作,但是由于某种原因,当我在这个应用程序上运行 Article.first.comments 时,我得到了方法丢失错误。如果我需要提供更多信息以获得帮助,请告诉我。谢谢你。

0 投票
1 回答
254 浏览

ruby-on-rails - Rails 在级别上验证唯一性

我的应用程序中有祖先树。

我只想在同一级别上实现记录的唯一性。

让我解释

记录:

如果我想创建folder (:title => 'folder2', :ancestry => '1')它应该会引发错误title is olready taken

但如果我创建 folder (:title => 'folder2', :ancestry => nil or "1/2")它应该创建新记录。

可能有人有这个问题,并且可以提供建议或回答

(在祖先方法中@elem.siblings 返回@elem 级别的所有记录)

0 投票
1 回答
929 浏览

ruby-on-rails - 搜查显示祖先的孩子?

我有祖先类别的Ransack搜索。

我有模型类别、页面和 category_page。类别有祖先。现在我可以搜索具有特定类别的页面。但是,我想要的是显示具有一个类别的页面以及具有子类别的页面。

例如,如果我搜索 Programming 类别,我还希望看到 Ruby on Rails 作为类别的页面(其父类为 Programming)

Ancestry docs 有几个我可以测试的选项,但我不知道我必须在 Ransack 上做什么。我将不胜感激任何我可以尝试的建议。

从 PagesController 截取

从视图中截取

0 投票
1 回答
543 浏览

ruby-on-rails-3 - Rails:使用 Ancestry Gem 的模型关联问题(树结构模型)

我正在开发一个简单的应用程序,该应用程序允许用户写一篇文章(parent_post),另一个用户回答这篇文章(child_post)。我正在使用Ancestry gem来跟踪帖子之间的关系。Ancestry 是一个 gem/插件,它允许将模型的记录组织为树结构(或层次结构)。它公开了所有标准的树结构关系(父、根、子、祖先……)。

应用程序的数据库 schema.rb:

挑战: 我想在 child_post 的显示视图中显示有关 parent_post 的作者的信息。通过 Ancestry gem,您可以调用“父级”并处理帖子表中的所有列。帖子表(见上文)有一个 user_id 列,所以我可以调用

向我展示有效的用户 ID。但我想显示用户名而不是 user_id。

当然,user_id 和 username (name) 是通过 users 表连接的(参见上面的 schema.rb),但是我如何在这里解决它们呢?@post.parent.user_id.name 不起作用。

型号:

我对 Rails 还是很陌生,并被困在这里。有没有我没有看到的超级简单的解决方案?

非常感谢您的帮助!

0 投票
1 回答
1524 浏览

ruby-on-rails - 递归部分局部变量不起作用

我正在使用ancestrygem 来创建嵌套评论。

在相关的 Railscasts 情节中,他使用了一个辅助方法,该方法使用了很多content_tag's... 但我的部分非常复杂,我不想那样做(我希望它嵌入到 ruby​​ 中)。

问题是当局部变量被递归渲染时,局部变量没有被传递。

注释的初始呈现(递归开始的地方):

这会创建嵌套对象的哈希。从那里,部分应该接管:

但是,当我运行它时,我会undefined local variable or method 'comments'引用上面部分的第 1 行。这只发生在递归的第二个循环中(我假设除此之外),初始循环工作正常。

我知道变量是正确的,因为在渲染调用之前你会看到我放了<!-- binding.pry -->. 如果我在那里使用 pry,我可以看到它comments确实具有正确的值。

我不确定在这里做什么...谢谢!

0 投票
1 回答
707 浏览

ruby-on-rails - 如何进行过滤然后找到祖先后代?

读完这篇文章(@thomasfedb 答案)后,我认为这可行:

但相反,我收到此错误

我也从这里尝试了@Rahul 的回答

没有祖先的后代,它是这样工作的

虽然我想在找到后代后进行 Ransack 搜索,但没有 Ransack 也会出现错误。出于这个原因,我没有将它包含在标题中。如果没有 Ransack,它将是这样的:

我会很感激任何关于这方面的建议可以工作

0 投票
1 回答
1139 浏览

ruby-on-rails - 有血统的工厂进行测试

我想运行一些 RSpec 测试来测试 Rails 中的 Ancestry。我想使用 FactoryGirl 为测试创建机构实例。我尝试了下面提到的以下方法,但没有成功创建子记录。

factory.rb 文件

在测试中我使用以下样式 样式:1

款式:2

款式:3

我已经搜索了使用 RSpec 进行 Rails Ancestry 测试的示例,但没有发现任何非常有用的东西。如果有人有任何可行的解决方案或可以指向我的资源,那将非常有帮助。提前致谢。

0 投票
1 回答
1229 浏览

ruby-on-rails - 祖先宝石说“未定义的方法'祖先'用于......”

我已经在 gemfile 中安装了祖先 gem

在模型中:

当我在视图中加载相应的类别时:

输出是

所以在ancestry列中的值是7。当我尝试显示此值= category.ancestry时,结果是:

当我尝试检查该值时也是如此......

我在这里做错了什么?为什么我不能使用祖先价值?

谢谢

0 投票
1 回答
707 浏览

jquery - 使用 Ajax 和 Ancestry gem 嵌套评论

我正在尝试在我的 Rails 4 应用程序中添加评论。我已经能够使用 Railcasts 262 作为指南来获得嵌套注释。当用户想要回复评论或添加新评论并限制页面重新加载的时间时,我想让新的评论字段出现。我看过 Railscasts 136 等。我正在使用祖先 gem,无法根据需要显示表单和评论。

问题似乎是当我将用户发送到 new_comment_path 时,post_id 会丢失。在路由中添加 ajax 和新步骤之前,我已经能够将其与注释一起保存。在我只是在帖子显示页面上呈现评论表单之前它起作用了。现在新评论正在保存,但 post_id、ancestry_id 和 parent_id 都是 nil。因此,我无法将这些评论呈现在帖子的显示页面上。在我让 new_comment 工作后,我还将对其进行设置,以便“回复”也可以工作。如果您有任何建议,请告诉我。谢谢。

post.rb

评论.rb

_comment_form.html.erb

发布 show.html.erb

评论 new.html.erb

评论 new.js.erb

创建.js.erb

_comment.html.erb

评论控制器.rb

post_controller.rb

0 投票
1 回答
661 浏览

ruby-on-rails - Rails,祖先 gem,填充具有两个深度级别的下拉列表

我按照https://github.com/stefankroes/ancestry的说明成功安装了祖先 gem ,我的类别表如下所示: 类别(id、category_name、ancestry、created_at、updated_at) 在此处输入图像描述

我想根据 parent->sub-category->sub-sub-category 进行选择: 在此处输入图像描述

此时使用代码(取自https://github.com/stefankroes/ancestry/wiki/Creating-a-selectbox-for-a-form-using-ancestry)我只能设法获得不正确的关注。 在此处输入图像描述