【问题标题】:Within a helper function inside a rake task, how do I access the name of that task?在 rake 任务内的辅助函数中,我如何访问该任务的名称?
【发布时间】:2023-03-10 16:53:01
【问题描述】:

我有一个 rake 任务,它为我的 Web 应用程序播种数据。我有两个 rake 任务:“production_data”和“demo_data”。我还有一个名为create_admin_login 的函数。我想在create_admin_login 中放置一个条件开关,以查看哪个任务正在调用它并设置适当的电子邮件值。

我不知道如何知道:task 正在被调用。我该怎么做呢? (我也意识到这可能不是编写 rake 文件的正确方法......我应该有一个名为 create_demo_admin_login 的单独函数吗?这不是很干。)

【问题讨论】:

    标签: rake rake-task rakefile


    【解决方案1】:

    不知道过了这么久对提问者有没有帮助,但是对于其他人,谁会来这里搜索。

    如何知道哪个任务正在调用 create_admin_login(或者换句话说 - 如何知道在 rake 中执行/调用了哪个任务):

      def create_admin_login
        foo = Rake.application.top_level_tasks.join(', ')
        if /production_data/ =~ foo
        # or exclude .join(', ') and make if statement with: foo.include?('production_data')
          # seed one data
        else
          # seed other data
        end
      end
    

    【讨论】:

      猜你喜欢
      • 2019-12-18
      • 1970-01-01
      • 2017-01-01
      • 2012-02-05
      • 2011-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-07
      相关资源
      最近更新 更多