这是我的佣金任务
namespace :users do
task :change_role, [:role] => :environment do |t, args|
puts args.role
end
end
我这样称呼它:
rake users:change_role["role"]
但我收到此错误no matches found: users:change_role["role"]
答案 0 :(得分:15)
在zsh中使用它们时需要转义方括号:
rake users:change_role\["role"\]
答案 1 :(得分:1)
将rake任务放在单引号中。
rake 'users:change_role["role"]'
有关https://thoughtbot.com/blog/how-to-use-arguments-in-a-rake-task的更多信息
答案 2 :(得分:0)
@infused方式有效,但如果你想让更改成为永久性的,那么你可以简单地调用rake users:change_roles["hello"]
,将以下内容添加到你的.zshrc中:
alias rake='noglob rake'
答案 3 :(得分:0)
您可以按照here中Chad Pytel的描述,将unsetopt nomatch
添加到您的.zshrc文件中。