找到一个 workaround,把 checker 放在每个$http request 的 config 里,然后在 interceptor 中检查。
var interceptor = ['$rootScope', '$q', 'httpBuffer', function($rootScope, $q, httpBuffer) {
function retryAterLogin(response) {
var deferred = $q.defer();
httpBuffer.append(response.config, deferred);
$rootScope.$broadcast('event:auth-loginRequired');
return deferred.promise;
}
function success(response) {
var checker = response.config.authRequiredChecker || function(response) { return false; };
if (checker(response)) {
return retryAterLogin(response);
}
// otherwise, default behaviour
return response;
}
function error(response) {
function defaultChecker(response) {
return response.status === 401 && !response.config.ignoreAuthModule;
};
var checker = response.config.authRequiredChecker || defaultChecker;
if (checker(response)) {
return retryAterLogin(response);
}
// otherwise, default behaviour
return $q.reject(response);
}
return function(promise) {
return promise.then(success, error);
};
但这样实在不优雅。所以还要继续讨教。
我的建议是:多参加各类交流和公益活动,和公益组织建立联系,发现他们在 IT 方面的需求,帮助他们建立或者优化网站、协同工具等等。
我所知道的例子有 TW 给立人图书馆做的捐书管理 App,还有成都的 Rubists 帮做的 newclass.org。
维护网站等工作可能没有太多技术含量,但这些工作能很好地发挥我们的优势,微薄之力也许就给他们很大帮助,也能帮自己扩展视野甚至催生改变。
晕,我都发邮件你了,也没见回。
html 的 table 不就是干这个的么?
程序员 8 小时内对着电脑,8 小时外还对着电脑,哪有功夫去见妹纸? But……当我变成 Social Animal,每天见的大部分是妹纸之后,对象依然没找到,还很难再做回程序员了。
很遗憾,这么棒的 session,又放灰机了。
可以参加每月一期的成都 OpenParty
@yorzi 重庆汉子求邀,那两天正好在西安活动。merlinran[at]gmail.com
发现自己运气太好了,正好赶上西安 Rubyists。 http://ruby-china.org/topics/13251
越写越复杂,这还叫重构么?
要去掉这一堆判断,可以做一个 proc 到 string 的 map,然后遍历这个 map。这种思路在 C 里用得蛮多,就是用数据结构来替代冗长的算法。
Pad 上网,就不贴代码啦~
以前,学历基本就是个敲门砖。我中专出身,在拿到自考本科之前,工作一直很郁闷。拿到本科后才有机会去和牛人一起工作。
而现在,这块砖的作用已经越来越小了。比如 ruby china 上的招聘,大部分都没要求学历吧。当然,前提是你有足够的兴趣和能力。
秋高气爽,户外爱好者们,会后可以组队去哪里游玩一下,徒步几天啥的…… 似乎歪楼了。
我自带睡袋来,预订阳台。
标题明确,内容清晰,才可能获得高质量的回答。请搜索“提问的艺术”。
@zz 有空我们聊聊。汽博这边有个创业者的工作室,也可以一起去坐坐。 Mail me: merlinran 在 gmail.com
跑步和其它运动结合起来,以提高兴趣为主。 本人以前跑 400 米就气喘,多年想坚持跑步均半途而废。爬山徒步一年多之后,2 小时跑完半马无压力。今年若非意外受伤,全马也没问题的。 码农爱运动,必须的。建议选择一些长时间持续性的运动,比如徒步,跑步,单车,游泳等等。打球之类,基本上除了出一身汗,也就是玩了。
难道 upyun 后台制作缩略图不需要时间么?。。。
二杆子来回答。
在 Controller 方法中赋一个实例变量,比如@user,Rails 就会把这些变量复制到对应的 view 里。
params 是从 HTTP 请求里提取出来的。比如你显示了一个 form,有 email 和 player 这些 field,submit 时这些 field 就会成为 params 的条目。