如何将命名参数传递给 Rake 任务?

2024-01-01

有没有一种方法可以在不使用环境变量的情况下将命名参数传递给 Rake 任务?

我知道 Rake 任务可以接受两种格式的参数:

环境变量

$ rake my_task foo=bar

这将创建一个名为的环境变量foo和价值bar可以在 Rake 任务中访问my_task by ENV['foo'].

Rake 任务参数

$ rake my_task['foo','bar']

这传递了值foo and bar前两个任务参数(如果已定义)。如果my_task被定义为:

task :my_task, :argument_1, :argument_2

then argument_1会有价值foo and argument_2会有价值bar.


你可以这样说:

rake some_task -- --arg=value

然后,在你的任务中,ARGV will be

[ 'some_task', '--arg=value' ]

所以你可以使用选项解析器 http://www.ruby-doc.org/stdlib/libdoc/optparse/rdoc/classes/OptionParser.html(或其他一些选项解析器)来解压ARGV就像任何旧的 CLI 脚本一样;看起来滑稽的--有必要阻止 rake 尝试解析--arg=like作为耙子开关。

使用标准环境变量方法可能会更好,它不像所有的方法那么难看--这是将参数传递给 rake 任务的常用方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将命名参数传递给 Rake 任务? 的相关文章

  • ruby 中 for 循环的语法

    如何在 Ruby 中执行这种类型的 for 循环 for int i 0 i
  • 处理不兼容的字符编码:UTF-8 和 ASCII-8BIT

    我在生产中遇到不兼容的字符编码错误 我尝试在本地重现它 但没有成功 这是错误消息 A ActionView Template Error occurred in controller name action name incompatibl
  • 使用 FactoryGirl 测试简单的 STI

    我有一个类 它是其他一些专门处理该行为的类的基础 class Task lt ActiveRecord Base attr accessible type name command validates presence of type na
  • 如何静默启动Sinatra + Thin?

    我有一个 Sinatra Base webservice 我想从命令行 Ruby 程序启动它 所以我有这个 command line program file require mymodule server puts Running on
  • Ruby 字符串上的扫描和匹配有什么区别

    我是 Ruby 新手 并且一直使用String scan搜索某个数字第一次出现的位置 返回值在嵌套数组中有点奇怪 但我只是去了 0 0 为了我想要的价值观 我确信它有它的用途 只是我还没有使用它 我刚刚发现有一个String match方法
  • RSpec 与 Shoulda?

    我是单元测试场景的新手 我现在只使用单元测试大约两个月了 当我在 Ruby 中进行单元测试时 我目前遵循 TDD 风格并使用 Test Unit TestCase 我还阅读了 RSpec 以及它如何遵循 BDD 方法 我还读过关于 Shou
  • Rube.exe:Babun 中没有这样的文件或目录

    我正在尝试在 Babun 中安装 ruby gems 以便我可以安装 sass 和 compass 但不断收到错误 C RailsInstaller Ruby2 1 0 bin ruby exe No such file or direct
  • Ruby on Rails:如何使用 JSONPath 访问(并保存到数据库)JSON 数组中的嵌套对象/属性?

    我正在尝试将 JSON 对象数组中的数据播种到我的数据库中 我有两个单独的数据库表 属性和单位 一个属性有许多单位 我已经能够通过 API 请求 JSON 数据 然后将其播种到数据库 成功地对属性信息 属性模型 执行此操作 但是 Valua
  • Thor 可执行文件 - 忽略任务名称

    雷神维基页面 制作可执行文件 https github com wycats thor wiki Making An Executable 向您展示如何创建由 thor 支持的 CLI 命令 如下所示 bash mythorcommand
  • 使用派生类的 C++ 命名参数实现

    我正在尝试为项目的某些类创建一个类似命名参数的构造函数 我这样做的方法是定义一个类代理 它将保存参数并将该代理的实例传递给我的类的构造函数 一切都很顺利 直到我不得不派出一门课程 基本上我想 我将从基类代理派生新的派生类代理 这也有效 但前
  • Rails 3.1 引擎迁移不起作用

    我正在创建一个带有迁移的 Rails 3 1 引擎 rake db migration 在该引擎和主机应用程序内运行良好 但我需要将此引擎包含到另一个 Rails 引擎中 第二个引擎包含用于测试的虚拟应用程序 我将这一行添加到该虚拟应用程序
  • 相当于 JavaScript 中 Ruby 的each_cons

    许多语言都曾提出过这个问题 但 javascript 却没有 Ruby 有方法Enumerable each cons https devdocs io ruby 2 5 enumerable method i each cons看起来像这
  • Ruby MRI 1.8.7 - 文件写入线程安全

    在我看来 在 Ruby MRI 1 8 7 中写入文件是完全线程安全的 示例 1 完美的结果 File open test txt a f threads 1 000 000 times do n threads lt lt Thread
  • 无法使用 gem 添加源

    我正在尝试添加http rubygems org http rubygems org 在我的来源中 因为我无法使用 gem install NAME 此错误 无法在任何存储库中找到有效的 gem dashing gt 0 所以 我执行了这个
  • 如何从 Rails 中的枚举值获取键名?

    我的模型中有一个与数据库中的列相对应的枚举 枚举看起来像 enum efficency High 0 Medium 1 Low 2 如何从值中获取密钥 例如 我的值为 0 我需要获取值 High 任何帮助 将不胜感激 Model effic
  • 如何将文本数据从 ruby​​ 控制台传递到剪贴板而不保存到文件?

    我试图将我创建的全局变量中包含的数组传递到我的 mac 上的剪贴板中 它很长 所以我不想在控制台上突出显示 复制和粘贴 我想使用嵌入式unix代码 特别是pbcopyMac 笔记本电脑控制台的功能 允许我将文本传递到我的计算机剪贴板中 准备
  • ruby 我应该使用 self.或者 @

    这是我的红宝石代码 class Demo attr accessor lines def initialize lines self lines lines end end 在上面的代码中我可以使用 lines lines 大多数情况下 我
  • 为什么机架响应主体是数组而不是字符串?

    他们的文档中的一个经典的 hello world 示例 class HelloWorld def call env return 200 Hello world end end 我的问题是为什么第三个值是 Hello world 而不是 H
  • 使用 Squeal 时可以有条件地在 where 块中添加子句吗?

    首先 我使用 Rails v3 2 9 和 Squeel 1 0 13 这就是我想要做的 我想使用三项身份信息中的任何一项来搜索客户 姓名 出生日期 dob 和社会保险号码 sin 结果集必须包括具有任何标识符 条件的 OR 的任何记录 我
  • 将同步 zip 操作转换为异步

    我们有一个现有的库 其中一些方法需要转换为异步方法 但是我不确定如何使用以下方法执行此操作 错误处理已被删除 该方法的目的是压缩文件并将其保存到磁盘 请注意 zip 类不公开任何异步方法 public static bool ZipAndS

随机推荐

  • curl: (3) URL 位置 1 中不匹配的大括号:

    我正在从这里运行 Apache Solr 教程 http lucene apache org solr guide 7 6 solr tutorial html http lucene apache org solr guide 7 6 s
  • 如何枚举 Excel 中的重复行?

    我的数据看起来像这样 Monkey Donkey Elephant Panda Donkey Donkey Monkey 我想用数字来区分行 对每个重复项进行计数 Monkey 1 Donkey 1 Elephant 1 Panda 1 D
  • 无法使用数据表和免费编辑器编辑/创建/删除表中的元素

    我正在尝试使用来自 AJAX 调用的 JSON 格式的数据构建一个可编辑表 为此 我将数据表插件与免费数据表编辑器 kingkode com free datatables editor alternative 一起使用 我无法使用数据表编
  • 按下按钮时关闭虚拟键盘

    我有一个Activity与EditText 一个按钮和一个ListView 目的是在搜索屏幕中键入EditText 按下按钮 搜索结果就会填充到此列表中 这一切都工作正常 但虚拟键盘的行为很奇怪 如果我点击EditText 我得到了虚拟键盘
  • 如何读取 WebGL 中的深度缓冲区?

    使用 WebGL API 除了执行我自己的光线投射之外 如何从深度缓冲区获取值 或以任何其他方式从屏幕坐标确定 3D 坐标 即找到单击的位置 几年过去了 这些天WEBGL depth texture扩展广泛可用 除非您需要支持 IE 一般用
  • myspace和linkedin在iphone中的实现

    我想在 iPhone 应用程序中实现 LinkedIn 和 Myspace 我的意思是我想使用我的应用程序更改两者的状态 是否有任何 API 可以同时访问这两者 我尝试了 OAuth API 但它仅适用于 Twitter 谢谢 提前 Lin
  • 了解 TodoMVC 示例

    开始学习node js 和backbone js 并使用TodoMVC 示例作为我的指南 有几个部分我很难理解 见下文 这是app js var express require express http require http mongo
  • 如何使用 python 加载 *.hdr 文件

    我想阅读 hdr 文件格式的环境地图 似乎非常流行的库不支持 hdr 文件读取 例如 OpenCV PIL 等 那么如何将 hdr 文件读取到 numpy 数组中呢 I found ImageIO http imageio github i
  • 是否有相当于“ListView.addHeaderView”的 XML 标记?

    是否有一个 XML 标签可以在布局文件中使用 它相当于ListView addHeaderView http developer android com reference android widget ListView html addH
  • 如何在 ZF2 / ZF3 url 视图助手中添加查询参数

    我正在尝试使用路由创建带有查询字符串的 url 如下所示 this gt url users gt users this gt url users sort gt desc gt users sort desc 然而这似乎不起作用 第二个助
  • Ruby + Windows + 超时 + 串行端口不起作用

    我正在开发一个多平台 Ruby 程序 该程序应该通过 USB 连接到串行设备 首先我使用了serialport gem 1 0 4 但后来我遇到了一些奇怪的问题 不得不放弃它 然后我继续通过Ruby的IO类进行通信 如下所示 port IO
  • 错误:index.js:找不到模块“babel-plugin-r”React Native

    我做了什么导致了错误 我有一个新安装的 Bare React Native Project 我想使用抽屉导航并且必须安装 React Native Reanimated 2 3 0 alpha 2 我已经尝试解决该错误 我已经安装了新的裸反
  • 回归对输入变量之一给出错误“对比只能应用于具有 2 个或更多级别的因素”[重复]

    这个问题在这里已经有答案了 我正在 R 中使用大量输入变量运行 logit 回归 newlogit lt glm install SIZES GROSSCONSUMPTION NETTCONSUMPTION NETTGENERATION G
  • Node.js - 资源解释为脚本,但使用 MIME 类型 text/plain 进行传输

    首先 我没有使用 Express 有了这个 当我加载我的index html递归归档readFile每个附加文件 例如我的 CSS 和 JS 页面 但它总是在我的检查器 Chrome 中返回此错误 资源解释为脚本 但以 MIME 类型 te
  • 将 css-loader 与 Webpack + React 一起使用

    我正在使用 Webpack 和 css loader w modules 构建我的 React 应用程序 我喜欢它 不过 我的大多数样式表都非常小 我想将它们内联到与我的标记和 JavaScript 相同的 JSX 文件中 我现在使用的 C
  • bootstrap.css 和 bootstrap-combined.min.css 有什么区别?

    我正在使用 bootstrap css 我发现还有另一个名为的 css 文件bootstrap combined min css 风格上有什么区别吗 是否需要包含这两个 css 文件 哪一个更可取 文件bootstrap combined
  • Python 中的矩阵求幂

    我正在尝试用 Python 对复杂矩阵求幂 但遇到了一些麻烦 我正在使用scipy linalg expm函数 并且当我尝试以下代码时出现相当奇怪的错误消息 import numpy as np from scipy import lina
  • 如何向另一个节点发送消息?

    我想实现一个简单的聊天室 其中两个节点可以同步向对方发送消息 没有一个节点充当服务器的角色 我可以用吗 向另一个节点发送消息 如果我通过以下函数获得该节点上进程的 pidspawn Node Module Fun Args 您可以发送到另一
  • 为什么我必须将我的对象放入 HttpContext 缓存中两次才能永久保留它?

    当我将一个对象缓存到HttpContext Cache 我的对象在下次读取时消失 我必须再次重新插入该对象 并非总是如此 但 90 的时间 之后 该物体就毫无问题地停留在那里 发生的情况如下 开始调试mvc项目 从缓存中读取年龄 The 年
  • 如何将命名参数传递给 Rake 任务?

    有没有一种方法可以在不使用环境变量的情况下将命名参数传递给 Rake 任务 我知道 Rake 任务可以接受两种格式的参数 环境变量 rake my task foo bar 这将创建一个名为的环境变量foo和价值bar可以在 Rake 任务