问题标签 [rails-cells]
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 - Rails 3 引擎的未定义方法 render_cell
我用rails plugin new golgi --mountable
. 单元格gem被添加为 gemspec 文件的依赖项:s.add_dependency "cells"
. 捆绑并运行生成器会rails g cell cart show
产生以下结构:
然后我尝试调用render_cell :cart, :show
views/layouts/golgi/application.html.erb 但我得到一个未定义的方法错误:
undefined method 'render_cell' for #<#<Class:0x000001009ec590>:0x00000100931600>
请注意,我正在运行为测试引擎提供的“虚拟”应用程序 (/test/dummy)。我需要什么才能使电池与可安装的引擎一起工作?
ruby-on-rails-3 - 自定义路线在开发中匹配,但在生产中导致 404
我的 routes.rb 中有以下定义
我用它来处理单元格的渲染。我的问题是以下链接:
在开发模式下工作得很好,但在生产中我得到“404 Not Found”。生产和开发 url 之间的唯一区别是开发中的 URL 使用 http,而生产中的 URL 使用 https。如果我在我的 proc 块中编写了错误的代码,我会理解,但看在上帝的份上,我无法理解为什么它在生产环境中不匹配,而它在开发中工作得非常好。
任何有关如何调试的提示都非常感谢。我的头上没有那么多头发了。
ruby-on-rails - 您如何配置单元格以使用不同的 url 根?
我的 Rails 3.2 应用程序在http://localhost/my-app
. 没有什么特别的,image_url
助手可以正确地计算出来:
但是,当从单元格调用相同的辅助方法时,url 会丢失/my-app
。
这当然会导致 404 响应。
如何正确配置单元格以使用不同的根 url?
我试过设置config.action_controller.relative_url_root = "/my-app"
,但没有效果。
以下是重现此内容所需的相关位:
ruby-on-rails - 如何使用 ActiveRecord 保持单元格的排列
我正在构建一个带有仪表板的 Rails 应用程序,该仪表板由已排序的单元格集合组成。最终目标是允许用户排列单元并将其保存到数据库中,但我无法理解实现这一点所需的体系结构。
我不太关心拖放单元格的 UI/UX,而更关心使用 ActiveRecord 在 SQL 数据库中表示这一点所需的模型。
任何帮助,将不胜感激。谢谢!
ruby-on-rails - 访问单元内的浏览器检测方法
我在我的 rails 3.2 应用程序中使用gem 'cells'和gem 'browser' 。我应该怎么做才能在我的单元格中访问浏览器 gem 的方法。
我找到了一个设计解决方案,这表明
我应该包括什么来访问单元格内的“浏览器”宝石方法
谢谢!
ruby - 如何将自定义渲染代码注入 Cell?
我创建了一个呈现数据表视图的单元格,我想将它重用于其他表视图。对于该数据的每一行,我希望将一些独特的元素与标准列混合。现在,我的 Cell 的简化部分版本show.html.slim
如下所示:
我希望能够从这个级别提取用户特定的代码并从上面注入它。细胞文档指出:
如果有疑问,请将视图的嵌套部分封装到单独的单元格中。您可以在单元格中使用 #cell 方法来实例化嵌套单元格。
但是,很难简单地实例化一个新的 Cell (编辑:在表格单元格内):
- 我需要知道要创建什么单元格。
- 我需要能够从父单元格传递信息(
user
在我的示例中)。 - 我需要能够传递特定于子单元格的信息(
current_user
在我的示例中)。
将这种类型的部分渲染注入 Cell 有哪些选择?它们中的任何一个是通常首选的解决方案吗?
ruby-on-rails - 使用 Rspec 隔离测试细胞 - 有什么建议吗?
我正在尝试 Apotonick 的 Trailblazer gem,它在 Rails 之上带来了更多的结构,我真的很喜欢我迄今为止尝试过的东西,虽然还没有完全接受它。这是 Trailblazer 的一大优势,您可以逐步深入了解它,逐步将其引入您的 Rails 项目。我买了 Trailblazer 的书,我现在正在关注这本书,这引出了我的问题。
我正在开发示例应用程序(@see https://github.com/apotonick/gemgem-trbrb),但我使用的是 rspec。
我想单独测试细胞输出。在本书中,测试框架是 Test::Unit 并且一些辅助方法附带了用于 Test::Unit 的单元格。
使用 rspec 这是另一个故事......我尝试了 rspec-cells 但它似乎不适用于 Trailblazer 中使用的当前单元版本(4.0)。因此,我尝试进行一些鲑鱼编码,目标是尽可能使用最小的设置来检索单元格的输出。这导致了一个带有简单助手的模块
这是代码(也在这里:https ://github.com/demental/gemgem-trbrb/blob/3ec9df1d5f45b880f834486da3c150d4b65ec627/spec/support/cells.rb )
我需要制作存根 url_options 方法的原因是 pathHelpers 方法可以在单元格视图中工作,而无需设置完整的控制器(带有完整的请求对象)。
我喜欢它的一种方式,它使设置非常简约。但我想知道它是不是太假了,因为我只是模仿一个控制器,但我觉得我没有摆脱它的依赖。你怎么看 ?
ruby-on-rails - 从视图调用时,期望辅助方法调用哪个类?
我有一个观点,它调用了一个助手。在我的 rspec 测试中,我想检查是否使用适当的属性调用了此帮助程序。
我不想测试chart_tag
是否呈现正确的 HTML;它是一个设置各种data-
属性的复杂助手;它设置了 highcharts 参数。此方法本身经过适当测试。
我想测试类似的东西:
我不知道在哪里设定期望:我不知道细胞如何渲染事物。它似乎利用了 rails 的渲染堆栈,但这对我来说也是一个陌生的领域。
我通过cells调用它,所以泛型rspec view
在这里不适用。
在单元格中,助手包含在helper
中,据我所知,这是一种rails 方法。但是按照该代码,仍然没有告诉我视图中包含什么,通过什么代理、类或模块。
为了说明堆栈/代码的一部分:
app/cells/analysis/chart.html.erb
app/helpers/chart_helper.rb
进入调试器时,我可以从以下位置检查状态
erb
:
但测试失败received: 0 times with any argument
:
知道要测试什么消息期望吗?
ruby-on-rails - 使用单元的新建和创建操作
我正在尝试在 Rails 4 项目中实现Cells gem。
我对为模型渲染表单单元有点困惑。我在 Google 上环顾四周,但似乎找不到涵盖此内容的教程。大多数教程仅涵盖 :show Cell。
- 实施单元格表单是否可能/良好做法?
- 你如何去创建和渲染这个 Cell?(我认为这将类似于 :show Cell)
- 单元格在表单提交过程中流向何处?参数是否仍发布到控制器或单元?我在哪里进行表单提交验证?
任何人都可以帮我澄清或指出一个涵盖这个问题的教程吗?
ruby-on-rails - 使用隐式模型从控制器渲染 rails 单元
我正在尝试使用 Rails Cell Gem ( https://github.com/aponick/cells ),但在从控制器和视图渲染单元时遇到了一些问题。
这是我的单元格(简化):
在标准的 ERB 视图中,我可以像这样对它进行单元格:
并且单元格渲染得很好。
但是在代码的其他地方我需要从控制器渲染这个单元格(作为 AJAX 调用的结果),我无法弄清楚 API。
以与视图结果相同的方式调用它不起作用 - rails 不会呈现单元调用的结果,而是根据控制器的方法名称查找模板
像这样称呼它:
给出:AbstractController::ActionNotFound(无法为 AcquiredSkillsCell 找到操作“#”)
像这样称呼它:
给出:AcquiredSkillsController 中的 ArgumentError#create 错误数量的参数(1 代表 0)
这意味着它将参数传递给 show 方法......我可以用参数定义 show,但是我不会得到隐式模型实例变量。
有任何想法吗?如果我能找到 render_cell 的 API 文档,我认为这会更容易:/
山姆