你还没明白不应该这样弄么
what_ever = Class.new # 生成一个类
自己新建一个 tmp/pids 文件夹,然后执行,不用 root
因为这个问题我一有大 js 就包裹成 gem
今天不实现这个功能,明天网站会崩溃吗? 奥,不会,那先放着吧
undefined local variable or method `root_path'
是否有在路由中设置 root?
把完整的 Log 贴出来
现在默认参数是跑一次 bundle,rails new 的时候有个参数可以指定不跑 bundle,可以查下文档。中国的网络对开发者真是悲剧。
我认可 linus 式的独裁管理,能实质把握网站走向的其实就是@huacnlee。现在一点问题是功能加太快,有点糙。社区/wiki/文章也许要分别指定负责人才行。
#14 楼 @wxianfeng Gemfile.lock 已经锁定了
#10 楼 @aNdReW_Qx 赞同。过早使用缓存会得不偿失,比如——在这个加个 xx 功能吧?不行,这样缓存就失效了/要重大修改,那还是放到别的地方吧或者不要提供了——这种情况出现。
#8 楼 @aNdReW_Qx idendity_map 是同一对话内有效,存到外部的 cache 就可以各个会话共享(这时候对象序列化速度有可能成为瓶颈)。
另一种思路是对象缓存,在 ITeye 大量使用。比如 User.find id,这种调用都是从 memcached 获取对象的,好处是缓存一次,到处调用。Twitter 放出的资料来看也是偏向这种,行缓存(数据)+ 列缓存(timeline)+片段缓存
条件允许的话用 redis 或者 memcached 比较好,用数据库字段缓存意义不大。像现在的一条回复,不单是文本的格式处理重复耗时,而且 user 信息的读取还会导致 1 + N 查询,另外还有 @ mention 的查询。这时候最好的方案就用片段缓存,把一条回复片段 cache 起来,这样一来数据库里面做缓存做优化就失去作用了。所以说缓存要后加,找到瓶颈才出手。
悬停效果在触摸为主的终端体验很不好的,除非有精力另外开发一套移动界面(Twitter 是靠 APP)
用户名现在不区分大小写了
http://haml-lang.com/ 另一个选择
是指样式?建议用 Twitter Bootstrap。
Module ContentExample
def test_should_acts_as_content
assert ...
end
end
Class PostTest < ActiveSupport::TestCase
include ContentExample
end
shared context 直接写个 method 调用好了(只有 let)。
这个例子没有 rspec 的 shared_examples 和 shared_context 强大,但我觉得这个优点不足以驱逐 Rails 自带的测试框架,因为我见过 Rails 升级时 Rspec 的各种不兼容(Rspec 竟然有两个大版本)。
还有一个强烈反感 Rspec 的是因为 Cucumber,同样的测试覆盖度,用上 Cucumber 代码量要大 5 倍,很多还是工具生成的,我想到 Java。而偏偏 Rspec 社区就和 Cucumber 绑上了。Rspec 的书上来就写 Cucumber,然后社区一直怂恿:你用 Rspec?你喜欢 BDD?来吧,用 Cucumber 让你的 BDD 更酷。开发者主导的项目,Cucumber 除了给脚上绑上铅块我看不到任何好处,而且我很怀疑产品设计人员根本不会写 Cucumber,最终就是 BDD 爱好者自娱自乐。