("一".."龥").to_a.size
=> 20902
所以,开发的时候,你不得把相关的代码给注释掉,不然加了个column,还得去改model部分代码。得发布了又得把新增的column名补上。现在,还有谁敢拿着里面还有select *的代码去发布啊,现在都找不到多少PHP代码里面到处都是select *了吧。
你举 PHP 的例子要说明什么?PHP 程序员都是最勤劳、最不怕干脏活儿、累活的同志啊。这一点大家都知道。
可以新开一个贴讨论一下 select *和外键约束问题..这贴太乱了。
而那个ActiveRecord Query Interface,默认生成的SQL可是select *啊,开发的时候的确不碍事,但总不能就这样发布了,还得把所有用到的column名字都补回去,下次改到这里再注释掉。要不就不用ActiveRecord Query Interface。
小白才去挨个加 column 名字... 小白才不用 ActiveRecord Query Interface。
比如开发的时候要改schema,很可能改错了又要改回来,所以你不会去生成migration文件,而是直接去数据库里改
小白才直接去数据库里改..
#20 楼 @gaicitadie 什么大小写不能错?和起名字没关系好不好。都是自动生成的,你愿意起什么名字就起什么名字:
rails g migration migration_name_here
前几天发现的一个用控制台做 slide 的工具:https://github.com/fxn/tkn
image = MiniMagick::Image.new('./1.jpg') image.resize("400x400") image.write ... image.resize("300x300") image.write ...
#2 楼 @lin_style who knowns
把@user.errors打印出来啊
用数据库的自增 id 啊
#3 楼 @quakewang 第一个很少人会这么写,好像实现起来也比较复杂,一般都是 scope.find(id)。 第二种很好,现在是把 eager loading 改成 N + 1 Query,但不知到 memcached 批量读和 N 次 read 性能差异有多大。 刚才发现 dalli 的 multi read 还有这个问题:https://github.com/mperham/dalli/issues/106
我算是非科班、没有任何 web 开发经验就直接学 Ruby/Rails 的吧:-) 基础差,数据结构、算法、操作系统之类的都不懂。四级没过。 刚学 Rails 的时候用了一个月都没把 depot 搭建起来。