ruby-on-rails - Redmine/Ruby/Rails - 在另一个自定义助手内使用自定义助手方法

标签 ruby-on-rails ruby redmine helper redmine-plugins

我不了解 Ruby 和 Rails,但我想构建一个小型自定义 Redmine 插件以满足我的个人需求。 而且我遇到了对于 Ruby 专家来说可能看起来非常简单的问题。 我有两个 helper (模块):

  • helper1

  • helper2

我想在 helper2.method3 中使用 helper1.method1。 我已尝试通过以下方式实现这一目标:

  • 简单地在 helper2.method3 中调用方法 helper1.method1,认为关系自动解决 - 没有工作;

  • 通过 require '../../relative/path'helper2 中要求 helper1 - 没有用;

  • 通过 require '../../relative/path'helper2 中要求 helper1 - 没有用;

  • helper2 中包含 helper1 - 没有用

我试图找到有关如何正确地从一个自定义助手调用另一个自定义助手内部的方法的信息,但没有找到任何相关结果。大多数结果是关于如何在 View 、 Controller 、设置 View 中调用自定义帮助器方法。

那么,有人可以向我解释如何在另一个自定义助手中正确使用一个自定义助手的方法吗?

最好,问候。

最佳答案

对于常用功能,我建议

  1. 在 lib 文件夹中创建一个模块(例如 lib/my_plugin/common_code.rb)
  2. 在插件 init.rb 中需要它:

    ActionDispatch::Callbacks.to_prepare do 
      require 'my_plugin/common_code'
    end
    
  3. 将它包含在每个需要的助手中

    include MyPlugin::CommonCode
    

关于ruby-on-rails - Redmine/Ruby/Rails - 在另一个自定义助手内使用自定义助手方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49065050/

相关文章:

css - Bootstrap 按钮和链接的样式冲突

ruby - 正确的 Assert_Raise 单元测试和异常类的使用

ruby - 如何在 Rails TestCases 中显示更长的跟踪

ruby-on-rails - 在 Controller 中运行 capybara 来测试一些东西但只能运行一次

mercurial - 使用 JIRA 问题 ID 注释 hg 提交消息(来自 CLI)以引用/关闭问题

ruby-on-rails - Rails - 在 before_save 回调中保存另一个模型的对象

ruby-on-rails - 批量查找 mongoDB 记录(使用 mongoid ruby​​ 适配器)

javascript - Rails 使用 Javascript 防止伪造

mysql - Redmine svn 存储库 - 无法从远程进行身份验证

ruby-on-rails - 在不重新启动的情况下调试 Rails 应用程序