把 ids 存在 User 端,查询收藏用户快 把 ids 存在 Tweet 端,查询用户收藏的 Tweet 快 两边都放,两个查询都快,不要用 mongoid 的 has_and_belongs_to_many 查询,它用了 in 查询,自己写一个能利用索引的查询。
其实量大的是 Tweet 量,收藏量我觉得不会大,新浪围脖的名人转发量也就千到万级吧。
mongodb 单文档上限 16m,一个 id 24byte
16 * 1024 * 1024 / 24 = 699,050.666667 =~ 70 万
如果收藏量真的达到这个级别,建议放在 User 端,查询的时候就不要查库了,直接拿用户的 favorite_tweet_ids 分页按 id 取 Tweet,每个 Tweet 都做个内存缓存。
以上说的没经过实践。
假设楼主用 mongodb:
把关联 ID 存在关联少的那端,不使用 has_and_belongs_to_many。双向关联都很巨大的情况很少见(或者楼主给个例子?)。
那现在输出什么?
不用插件可以自己写,只要你熟悉所有图片的二进制规范……
大多数插件也是调用系统工具(比如 ImageMagick)而已
routes error 在 routes 解决,路由后面接上 :constraints => { :id => /.+/ }
, :id 换成你要的参数
注意不要留下 '../../../etc/passwd' 这样的漏洞,总归要对文件名做一些处理
简单起见可以用同一个 action 根据 submit 的值不同处理不同逻辑
gcc 还没装
我感觉 Rails 配合 Jbuilder 木有什么问题阿
WARNING: You don't have /root/.gem/ruby/1.9.1/bin in your PATH
不懂 zsh,不过看起来跟这个有关,把这个目录加进 PATH 看看?
还是自己写好。devise 内部机制是带 scope 逻辑的,每个方法都要对应任何 Model,要读懂成本太大了。
尽量贴原文链接 http://www.ifanr.com/77240
#1 楼 @dreamrise 括号用了中文所以识别不到
我想起有次到大学 Linux 群推广一个网站
「网页有 Bug 啊,排版全乱了」 「什么浏览器?」 「IE8」 「……」
我另一个项目还用了 section 之类的新标签 IE9 以下都全灭 http://caniuse.com/#search=section
配置里面加
imap ( ()<esc>i
简单美。用文本有种沉淀下来的感觉,以前放数据库里一直考虑备份又不环保。
补充一下
一般来说 json 接口不会直接用 to_json,因为输出的信息太多,这时可以用 Jbuilder https://github.com/rails/jbuilder 来定制 json 数据。Jbuilder 可以用视图的 helper。
我觉得缓存设在 View 比较好,AR 是延迟查询的,不会重复查询。(可能别人有不同见解)
弄个 example 文件,部署的时候填
印象中 1.x 版本有 rails core 维护的 acts_as_list 和 acts_as_tree,别的开发者就沿袭下来了
目前已经是用 rspec 写 ruby-china 的测试了。欢迎参与 ruby-china 的开发,提交前要 rake 一下。