您好!我是 蒂姆,为大家带来 Rails 本周报的最新一期。
本周有 26 位贡献者贡献了自己的力量,其中有 4 位是首次贡献!真是棒极了!
如果您正在使用 Rails 4.2,可能想要抢先试用最新补丁版本的候选发布版。这是第一个支持 Ruby 2.4 的 Rails 4 版本,所以欢迎大家踊跃尝试,帮助我们解决其中的问题!
ActiveRecord::Base#lock!
和 #with_lock
在执行实际锁定操作前重新加载记录。如果有任何未保存的更改,它们都将被丢弃且没有任何警告。在 Rails 5.2 中完成这项工作后,尝试锁定一个脏对象时将引发异常。在此之前,对该特性的支持已被弃用,所以请留意之类的警告!
如果您已经在回调中的 if
和 unless
条件中看到关于字符串使用的弃用通知,那就请注意!对这些特性的支持现已正式移除。如果你还没有更新,现在是时候了!
您可能已经知道,ActiveRecord::Base.as_json
接受一个(可选)选项散列表。该散列表在内部被修改,但 Rails 很贴心地先克隆了它,以便不会更改您传递给它的内容。然而,如果您的内容被冻结,它将会引发错误!您可能会问,这是怎么做到的。嗯,当您 clone
一个对象时,其被冻结的状态也会被克隆。dup
则不然,结果它反而成了解决方法。结案!
这就是 Rails 本周报的全部内容了。还有许多其他出色的贡献,在这里无法一一列举,但欢迎您 查看一下!
下周再见!