我已经使用它一段时间返回true或false建立假种子数据.只是想知道是否有人有更好,更简洁或冗长的方式返回true或false.
rand(2) == 1 ? true : false
Run Code Online (Sandbox Code Playgroud) 我正在研究使用delayed_job的队列.我发现这个页面概述了各种启动工人的方法,但我想保留目前的Capistrano方法:
set :delayed_job_args, "-n 2 -p ecv2.production"
after "deploy:start", "delayed_job:start"
...
Run Code Online (Sandbox Code Playgroud)
我想知道如何修改delayed_job_args来处理具有特定队列的产生1工作者,以及为每个其他工作处理1个工作者.到目前为止,我所拥有的只是如此重写每项任务:
namespace :delayed_job do
task :restart, :roles => :app do
run "cd #{current_path}; RAILS_ENV=#{rails_env} script/delayed_job -p ecv2.production --queue=export restart"
run "cd #{current_path}; RAILS_ENV=#{rails_env} script/delayed_job -p ecv2.production restart"
end
end
Run Code Online (Sandbox Code Playgroud)
......但那没什么好玩的.有什么建议?
我想在JavaScript/jQuery中排队任意数量的可选函数调用.例如,我可能需要确保在运行第二个(或第三个,第四个等)函数或AJAX调用之前对用户进行身份验证并设置cookie.
我调查了最近添加的jQuery.Deferred,但发现调用的顺序无关紧要(真正的异步样式).此外,我读到,一旦Deferred实例得到解决,就无法解除它.
这就是我现在所处的位置.最初,我正在考虑将Deferred实例设置为已解决,然后如果堆栈中出现可选函数则取消解析它.
var d = $.Deferred(),
chained = d,
d.resolve(),
div = extra.find( "div:first" );
if ( extra.attr( "requires-auth" ) != undefined && !config.user_is_authenticated )
chained = chained.pipe( authenticate );
if ( div.length )
chained = chained.pipe( prepareExtra( div ) );
// When the two optional methods are resolved, show the content
chained.done( function() {
extra.fadeIn( 500 )
} );
Run Code Online (Sandbox Code Playgroud)
我的问题是,在纯JavaScript/jQuery中排队(0到N)AJAX调用的最佳方法是什么?(不使用插件).
德!
编辑2:已解决! 以下是一些有用的例子,一个没有AJAX,一个有:https : //gist.github.com/1021429 https://gist.github.com/1021435