问题标签 [draper]
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 - 带有引导分页的 Draper - 未定义的方法“total_pages”
我正在使用 Draper 来装饰我的视图并从中移出一些逻辑,但我正在努力解决这个问题 - 如何使用 Bootstrap Pagination ( will_paginate
) 设置 Draper?
默认情况下,我有这个:
从 Draper 文档中,我尝试添加以下内容:
但是在视图中调用分页时它仍然返回错误。我的控制器像这样定义装饰和分页:
而我的观点:
更新:
ruby-on-rails - draper 装饰器从原始模型 Rails 更改了“模型”属性
我正在实现 draper 装饰器,下面是代码。
.decorate
在我添加方法之前一切正常,
在我添加.decorate
方法之前,@model 属性是它应该是的,但是在我添加方法之后,puts 输出变为:#<Machine:0x007fd7e7813500>
发生了什么事?
ruby-on-rails - Ruby on Rails 中的手工装饰器。当 Drapper 导致的问题多于解决的问题时
我在我的 Rails 项目中使用 Draper gem 来获取装饰器模式功能。我认为 gem 将通过分离模型逻辑和视图逻辑来帮助提高我的工作效率。但是整个工作流程变得可怕。我应该始终将 .decorate 添加到每个控制器中的模型中。我的装饰器类是相互之间的委托全网。此外,当我开始使用 ActiveModel 序列化器时,我发现序列化器无法与我的装饰器一起使用。
我不喜欢这种方法并决定不使用单独的装饰器类,而是为每个模型提供装饰器模块。可以吗?这个解决方案可能会出现什么问题?
首先,它非常简单。我解决了下一个问题:
我不需要使用装饰继承的模型类。我只是为现有模型类提供装饰器方法。
ActiveSerializer 现在可以使用装饰器方法。
但我觉得这个解决方案有问题。请给我一些批评!
ruby-on-rails - 带有 Ajax/JS 的 Rails draper gem
我正在使用 draper 并想在视图中使用其中一个装饰器。
使用 HTML 一切正常,但装饰器在 Ajax 版本中不起作用 - 我收到未定义的方法错误。
在评论装饰器中:
委托全部
鉴于:
我正在使用曝光,所以我不需要视图中的实例变量。
ruby-on-rails - 如何在 draper 中用另一个名字装饰一个物体?
这是问题
我有一个事件模型和一个用户模型。
一个事件有一个用户类的创建者。我在事件模型中使用了这一行来关联它:
所以我可以通过这一行访问创建者:
我的用户装饰器有这一行:
所以我可以装饰一个用户对象并访问 user.full_name
但我需要装饰一个事件,并使用“decorates_association”来装饰关联的用户。所以我需要调用这条线:
我试过这个:
但它会抛出“未定义的方法‘full_name’”错误。
我怎样才能防止这个错误?
谢谢!
activeadmin - ActiveAdmin 不装饰显示视图
我在我的 Rails 项目中使用 ActiveAdmin。我使用 Draper 作为装饰器,但我不明白为什么不装饰显示视图。根据文档,它应该可以decorate_with MyDecorator
在我的 ActiveAdmin 资源中添加。
这是我的代码:
有人知道我的代码有什么问题吗?
ruby-on-rails - 视图测试中装饰器上的助手的 Rspec 问题
我的一个 rspec 测试失败,因为我无法在渲染视图的装饰器上使用辅助方法,而视图在正常运行服务器时完美运行,这是错误
以下方法是在从渲染视图调用的装饰器方法中调用的简单布尔检查:
和辅助方法:
我可以将辅助模块导入装饰器,但是控制器名称的错误更改未定义,所以我想我的问题分为两部分:
一,当通过 Rspec 从渲染视图调用装饰器时,如何让辅助方法工作,二,如何设置 controller_name 以在 Rspec 测试中工作。
ruby-on-rails-4 - Rails 4,Draper:经过身份验证的用户和视图
这种视图模式似乎没有分离关注点。
我在我的应用程序中包装了几个视图,逻辑要求用户登录,而是想分离关注点并将 <% if user_signed_in? %> 它所属的逻辑......这对我来说似乎是一个装饰器(因此是 Draper 标签)。
这里的最佳做法是什么?
ruby-on-rails - 当我想从另一个控制器调用装饰方法时如何调用它?
在用户的主页中,我想显示用户的phrases
.
但这失败了Could not infer a decorator
。我理解错误的发生是因为只有在适当的控制器中我才能使用该decorate
方法。我读过这篇文章,但我可能会误解它。
所以如果我想decorate
在这种情况下使用方法,有什么好的方法来解决它?
ruby-on-rails - 如何在装饰器中避免过多的`h.concat`
我h.concat
在这样的装饰器类中使用了很多:
首先,我觉得它太多了h.concat
。其次,我不喜欢paren do ~ end
block。
有没有更好的方法来编写这些代码?