问题标签 [inherited-resources]

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 回答
1822 浏览

ruby-on-rails - 使用 MongoMapper 编辑资源时未检查 Formtastic 复选框

使用以下 Store 和 Service 模型,由 MongoMapper 管理:

我有这个表格,用 Formtastic 完成:

控制器使用继承资源,并且编辑操作是隐式的。

在编辑已关联服务的 @store 时,后者的复选框不会显示为选中状态。

Formtastic 的 README警告它不正式支持 MongoMapper,但它也说人们已经成功地同时使用了这两种方法,我在网上看到了一些这样的例子。

我怀疑Inherited Resources也不支持它,从我从 Devise + Simple Form 中看到的,都来自同一作者并且不支持 MM。他们正在努力在他们的 gems 中使用 ORM 适配器,但它还没有准备好 AFAIK。

而且我已经遇到了问题,我正在覆盖更新操作以使其正常工作:

有谁知道与 MM 的冲突在哪里,无论是在 Formtastic 还是 IR 中,以及为了检查这些复选框而进行的黑客攻击?

0 投票
2 回答
800 浏览

ruby-on-rails - RSpec 模拟模型和继承资源

我正在尝试为inherited_resources 控制器编写规范。我决定使用 rspec 的 mock_model 来模拟与数据库的所有集成。不幸的是,我无法为创建和更新操作编写规范,因为我收到以下错误:https ://gist.github.com/936947 有人可以帮我解决这个问题吗?

0 投票
0 回答
324 浏览

ruby-on-rails-3 - 扩展视图路径

我有controllers/admin/base_controller.rb,其中为其他管理控制器定义了所有类似的操作(在inherited_resources gem的帮助下)(它们被称为类Admin::EventsController < Admin::BaseController),我几乎很高兴-控制器中有 50% 是空的,但我发现自己复制了通常有四个视图:index.haml、new.haml、edit.haml、_form.haml。只有 _form 看起来不同,其他的是 2 行代码并且已经重复了 15 次!我试图删除views/admin/events/index.haml并将其放置到views/admin/base/index.haml,但rails没有将它包含在模板搜索路径中:

如何在控制器级别添加它?我找到了有关 TEMPLATE_ROOT 的信息,但它是不变的并且已弃用。也试过

ActionView::Base.new 做 |av| av.base_path.add = "#{RAILS_ROOT}/app/views/admin/base" 结束

没有成功

目标是删除 index、new 和 edit 视图,它们都是一样的,只是标题和对象,可以由 i18n 和inherited_resources 携带

0 投票
0 回答
1004 浏览

ruby-on-rails - 继承的资源:无法在 polymorphic_belongs_to 中获取父级

我在我的 Rails 应用程序中使用继承资源,但我有一个问题:

当我在控制器之间使用多态关系时,我无法访问父对象。

按照文档,我有一个这样的控制器:

但是父母总是返回零。它也不适用于:

但是,如果我不使用多态关系,它会起作用:

或者

请注意,我的路线和有关inherited_resources 的所有其他内容都可以正常工作。

我使用的是 Rails 2.3.10 和 InheritedResources 1.0.6,但有些人对 Rails 3 有同样的问题。这是邮件列表中的一个帖子:http ://groups.google.com/group/inherited_resources/browse_thread/thread/ 8d154492bad90f2d

任何想法?

谢谢

0 投票
2 回答
1085 浏览

ruby-on-rails - 继承资源:具有嵌套资源的路由

在我的 routes.rb 我有:

如何将它与继承的资源路由一起使用?

search_adv_collection_url 不起作用。

0 投票
1 回答
469 浏览

ruby-on-rails - 使用inherited_resources 缓存

我已经使用inherited_resource 插件构建了一个应用程序,并准备好投入生产。

现在我正在寻找为同一个应用程序实现缓存的方法。由于我有一些依赖于 current_user 的页面片段,我将使用片段缓存机制。

有人可以为我提供一个指针或资源,它有助于为基于继承资源的视图和控制器实现片段缓存吗?

谢谢,阿杰·库马尔 G

0 投票
1 回答
492 浏览

ruby-on-rails-3 - 站点范围的继承资源行为 Rails 3

我正在尝试在我们的控制器响应背后制定一些约定。我的约定之一是:

成功create时,如果请求是 XHR,则呈现 @the_object

我看不到任何能让我全面做到这一点的东西。目前我正在这样做:

必须为每个控制器执行此操作显然并不理想。有谁知道我是否可以创建站点范围的可配置响应?

0 投票
2 回答
1574 浏览

ruby-on-rails-3 - 如何使用 rails 脚手架命令覆盖inherited_resources

我在我的 Rails 3 应用程序中使用 active_admin gem,它有一个依赖继承的资源。我有点新手,宁愿为我自己的控制器避免继承资源的黑盒质量,但是,当我运行默认的 rails g scaffold 命令时,生成的控制器是从继承资源继承的。我知道我可以通过从 ApplicationController 继承来手动覆盖它,但是,如果可能的话,我希望能够生成默认的 rails 脚手架。

0 投票
3 回答
2126 浏览

ruby-on-rails - 在 InheritedResources 上成功创建或更新操作后运行操作

我目前正在开发几个模块,以便使用 InheritedResources(最新版本)应用程序在 Rails 3 上重用我的控制器中的代码。

我的想法是在成功创建或更新资源后运行一些行为,但除了重新声明“创建”或“更新”操作外,我不确定如何解决这个问题。

我目前正在使用类似的东西

我使用了一个特定的资源设置,其中包括将资源的 ID 添加到会话中。资源成功保存到 BD 后,我想从会话中删除它的 id,这就是 after_filter 所做的。

到目前为止,我已经通过将 updated_at 信息保存到会话中并比较以查看模型是否已更新(如果是,它应该已成功)并运行该方法来处理它。

但是,我对此并不满意(有点 hacky),而且我计划让其他模块在更新后也可以与资源一起使用,并且不想两次使用相同的方法。

我应该使用 IR 上的钩子吗?或者关于如何进行的任何其他想法?

0 投票
0 回答
440 浏览

ruby-on-rails - Rails 3 使用 Rspec、嵌套资源和继承资源获取错误的模拟模型

我正在尝试使用 Rspec 和模拟模型测试嵌套控制器,但出现以下错误:

我找不到为什么会这样。

路线.rb

应用程序/控制器/api/v1/stores_controller.rb

应用程序/控制器/api/api_controller.rb

我的 spec/controllers/api/v1/stores_controller_spec.rb -> http://www.pastie.org/2118818向我抛出了这些奇怪的错误 -> http://www.pastie.org/2118825

为什么我总是得到嘲笑的用户而不是商店。

如果我从 app/controllers/api/v1/stores_controller.rb 中删除了 belongs_to :user 行,我所有的测试都通过了,但我有兴趣测试“users/:user_id/stores/*”路由。

我如何正确测试它们,以及为什么我得到一个模拟用户而不是商店。

我在用着

谢谢你的时间。