小编Chu*_*ron的帖子

返回随机布尔值的最佳方法

我已经使用它一段时间返回truefalse建立假种子数据.只是想知道是否有人有更好,更简洁或冗长的方式返回truefalse.

rand(2) == 1 ? true : false
Run Code Online (Sandbox Code Playgroud)

ruby

101
推荐指数
3
解决办法
2万
查看次数

通过Capistrano任务启动多个具有特定队列的DelayedJob worker

我正在研究使用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)

......但那没什么好玩的.有什么建议?

ruby ruby-on-rails delayed-job ruby-on-rails-3

12
推荐指数
2
解决办法
3056
查看次数

在jQuery($ .Deferred)中排队可选的AJAX /函数调用?

我想在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

javascript jquery jquery-deferred

5
推荐指数
1
解决办法
2904
查看次数