【问题标题】:How do I use Ruby refinements in Rails views?如何在 Rails 视图中使用 Ruby 改进?
【发布时间】:2014-03-17 19:27:00
【问题描述】:

我有一个使用 Ruby 2.0 的 Rails 4 项目。我已经定义了一些改进。放

<% using MyRefinements %>

在视图文件的顶部导致错误“未定义的方法'使用'”。

当我添加时:

using MyRefinements

在我的控制器顶部(类声明上方),我可以成功使用控制器中的细化,但如果我尝试在视图中使用它,则会收到“未定义方法”错误。

谢谢!

【问题讨论】:

  • 不是很详细的意见...

标签: ruby-on-rails-4 ruby-2.0 refinements


【解决方案1】:

不幸的是,这似乎是不可能的。为了后代,我正在记录我尝试过但不起作用的事情:

在视图中:

<% using MyRefinements %>

在控制器中(每个单独尝试):

using MyRefinements
helper :MyRefinements
helper_method :MyRefinements
helper { using MyRefinements }

在助手中:

using MyRefinements

请注意,细化在控制器和助手中可用,但在视图中不可用。

太糟糕了。

【讨论】:

  • 这对我来说似乎很奇怪。还是没有办法在视图中使用细化?
【解决方案2】:

通过使用“使用”,您可以将模块中的类改进导入到当前的类或模块定义中。 您不能通过“使用”将其包含在视图文件中。 如果你想在视图中使用它,你可以在你的控制器中执行以下操作(我还没有测试过):

使用我的优化

helper :MyRefinements 或 helper_method :MyRefinements

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2014-11-02
    • 1970-01-01
    • 2020-04-19
    相关资源
    最近更新 更多