我运行Cucumber和RSpec测试的rake任务总是使用我的开发环境。这里是相关的配置文件:RAILS_ROOT/config/environments/cucumber.rb#Editatyourownperil-it'srecommendedtoregeneratethisfile#inthefuturewhenyouupgradetoanewerversionofCucumber.#IMPORTANT:Settingconfig.cache_classestofalseisknownto#breakCucumber'suse_transactional_fixturesmet
如果我的Rakefile没有找到具有特定名称的任务,我希望rake根据特定规则使用该名称创建一个新任务,如果一个文件缺少任务名称存在。但如果没有,我想回退到默认值(“不知道如何构建任务'foo'!”)。简而言之,Rake是否有method_missing? 最佳答案 我没试过,但快速搜索显示this.Ifyoudefinearulewithanemptystring,youcancatchanytaskthathasn’tbeendefinedelsewhere.Thismakesiteasytodynamicallycreater
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我们正在开发一个相当大且广泛的应用程序。该网站将有许多不同的部分,具有一些非常不同的用户界面要求和行为。展望future,Rails4将Assets管道分离到一个单独的gem中,因此我们可以选择包含或不包含它。turbolinks可能会发生同样的事情。这些天我一直在问自己但找不到答案的问题是:我是否应该在我们的项目中使用这些库?我反射(reflect)的主
我正在使用EventMachine和Monetarily与我的Rails应用程序一起启动eTCP服务器。这是从config/initializers/momentarily.rb开始的。我的问题是当我运行rake任务时它也会启动,比如db:migrate。我只希望它在我启动HTTP服务器时启动。环境无济于事,因为服务器启动和rake任务都在开发环境下。有没有办法知道应用程序正在运行HTTP服务器而不是其他任何东西?请注意,这不仅是rake任务,如果我运行rails控制台,EM也会启动,这对我的情况来说也是不可取的。 最佳答案 unl
我想在我的rake任务中使用ActionMailer,以便在特定时间向人们发送电子邮件。我在app/mailers文件夹中编写了一个邮件程序类,如下所示:classAlertsMailer然后我在我的rake任务中包含了以下行:AlertsMailer.mail_alert(email_addresses,subject)当我尝试运行rake任务时:rakeupdate_db我收到以下错误:uninitializedconstantAlertsMailer我想我必须以某种方式在我的rake任务中加载邮件程序类,但我不知道该怎么做。请帮忙。 最佳答案
在rake任务中,如何查询描述?会给出的东西:desc"PopulateDB"taskpopulate::environmentdoputstask.desc#"PopulateDB"end 最佳答案 task必须定义为任务block的参数。desc"PopulateDB"task:populatedo|task|putstask.comment#"PopulateDB"putstask.full_comment#"PopulateDB"putstask.name#"populate"end编辑:此解决方案适用于rake0.8.7。
在使用Rake任务部署应用程序很长时间后,我开始研究Capistrano。它与Rake的相似程度真的很惊人。许多并行命令(如cap-T)和许多相同的概念(命名空间、任务)。有人知道这背后的历史吗?Capistrano是Rake的扩展,还是建立在它之上? 最佳答案 更新:Capistranov3switchedbacktousingaRakeDSL而不是自己滚动DSL.Capistranov1和v2不依赖于rake.它是作为处理远程服务器的DSL从头开始编写的。很明显,capistrano的某些方面受到了rake的影响,但是Jam
嘿,我玩过bundler和一些gems,现在我不能再使用rake如果我做一个简单的db:migrate我会得到这个错误:mac:appantpaw$rakedb:migrate/usr/local/lib/ruby/site_ruby/1.9.1/rubygems.rb:335:in`bin_path':can'tfindexecutablerakeforrake-0.8.7(Gem::Exception)from:282:in`method_missing'from/usr/local/bin/rake:19:in`'但是如果我执行gemlist,则会列出rake。我使用的是rail
我一直在尝试将位于github上的gem添加到我当前的应用程序中。gem有一个我希望能够从我的应用程序访问的rake文件。但我不断收到加载错误。load'tasks/deploy.rake'gem文件看起来像这样#-*-encoding:utf-8-*-require'rake'Gem::Specification.newdo|gem|gem.authors=%w(HelloWorld)gem.email=%w(test@example.com)gem.description='test'gem.summary='test'gem.homepage='https://github.co
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Rails3.0&Ruby1.9.2rc:Rakecommandsreturn'alreadyinitializedconstant'&stackleveltoodeeperrors.Anyideas我在WindowsVista上使用Ruby1.9.1版。对于正在使用的任何rake命令,我都会收到rakeaborted错误。这不会发生在我所有的应用程序文件夹中。它仅发生在特定的应用程序文件夹中。C:\rails_project\stunetwork>rakedb:reset(inC:/rails_projec