@ShiningRay 你这种需求属于对于 many-to-many 的中间表做水平切分,并且对双向的 many 都需要查询,常见做法是建立 2 个表,以用户阅读文章为例,一个表根据 user_id 做切分(hash or range shard),另外一个表根据 topic_id 做切分,index 在 2 个表上分开对 user_id 和 topic_id 来建立。创建新记录的时候,需要往这 2 张表都要插入一样的数据。查询的时候,先看是从哪个方向的 many 来查询,然后再做普通的 shard db lookup.
如果项目中不需要输入太多中文,可以用这个插件做临时解决: https://github.com/xgenvn/InputHelper
另外,ST2 确实不错,现在已经完全从 netbeans 转过来了
layout 能够用 Proc 作为参数:
class XxxController < ApplicationController
layout Proc.new { |controller| current_user.admin? ? 'admin' : 'application' }
end
多看看文档吧,这些基础的东西在 rails 文档上都有的
推荐 mariadb 或者 percona
用 example.com 这个 main site 做 oauth,sub domain 的 a 和 b 是可以和 main stie 共用同一个 cookie 的
60 级的野蛮人,正在炼狱 act2 艰难前行,等 1.03 补丁中...
没有默认设置 no-ri, no-rdoc 吧?可以将/home/xxuser/.rvm/gems/ruby-1.9.3-pxxx/doc 这个目录删除掉,这样可以少占空间
(2001..2012).map{|i| i.to_s.rjust(6, '0')}
#5 楼 @huacnlee 用 Loading RVM environment files in shell scripts,非常容易用: https://rvm.io//integration/cron/
memcached 和 app server 直接有无防火墙?以前遇到过防火墙策略调整,导致杀死不活跃的长连接,错误和你这个类似。
有个空间配额的问题想请教一下,比方说我购买了 3 个月 100G 的空间,但是实际上只用掉了 50G,那么 3 个月后,还没有用掉的 50G 就无法再使用了?另外已经用掉的 50G 空间我可以删除掉一些过期文件,然后再次使用么?
和 perform_caching 无关,这是 rails 3.2.2 在处理日志上的一个小 bug,升级到 3.2.3 或者用这个 issue 里面的 patch:
ps aux|grep nginx lsof -a -p pid_of_nginx|grep conf
下次聚会的时候,我可以带上运行 ubuntu 的 android pad 秀一下。
@huacnlee 能提供一下又拍云的价格么?和传统按带宽收费的 CDN 相比有无优势?传统 CDN,按照 4M 峰值来算,60~100 RMB / M * 4,一个月在 240~400 之间。
据我所知,只要你有居住证,上海从幼儿园到小学,普通的公立学校都是就近入学,并不需要额外缴很多钱,初中就是看考试了。
我反而希望 erb 能够像 slim 那样,所有的 HTML 输出都在一行
可以用前端的 web server 来给端口或者 url 添加认证,比如你直接 mount /resuqe 到你的应用,前端用 nginx 配置一下:
location /resque {
auth_basic "Restricted";
auth_basic_user_file htpasswd;
}
如果是历史遗留数据库,可以用 alias_method_chain,来实现你前面说的功能: https://github.com/plataformatec/devise/wiki/How-To:-Migration-legacy-database
你前面的代码没有实现用户忘记密码的功能,而且相当于直接打 monkey patch 了
Devise 这种 gem 的代码阅读,需要多学习 ruby 的语法,它里面用了很多元编程的特性
#17 楼 @chucai gurudigger 是我以前用业余时间做过一段时间,现在的创业项目和它无关,不过 gurudigger 上面还是有一些好玩的 idea 和创业团队
#16 楼 @siyang1982 前端已经招募到了,现在还缺 UI 设计(可兼职)
@Rei 文章很简洁,提一个小瑕疵,客户端的 ajax 在 Rails 3.2 里面通常是绑定 ajax:event 来做的,而不需要绑定 form 的 submit 或者 link 的 click 事件,这样可以少去很多代码:
$('new_reply_form').on('ajax:success', function(data){
$("#xxx").html(data)
})
#1 楼 @HungYuHei First-class regexp:
/ruby/.class # => Regexp
而其他语言,比如 Python 或者 Java,你需要 import re 或者 java.util.regex 然后再做 complie/search 等操作,正则表达式并不是这些语言的“一等公民”。
这个太赞了,本来准备自己带儿子去现场买票的: 需求 2 张 5 月 1 号