find_by_x确实(轻微)被弃用了吗?

Ian*_*ton 4 activerecord ruby-on-rails ruby-on-rails-4

我见过人们从此改写他们的代码 Model.find_by_x(x)Model.find_by(x: x)例如),我想知道,如果它的时间做一些家政服务。

难道find_by...真的过时?(一些证据/讨论会很好。)这个Rails提交暗示它是。同样在ActiveRecord :: Base文档中,此提交更改了,它被称为“不建议使用”。

提取的dynamic_finders宝石声称不是:“请注意,不建议使用find(primary_key),find_by ...和find_by ...!。”

并且在4.0发行说明中:“不建议使用除find_by _...和find_by _...!之外的所有动态方法”。

pdo*_*obb 5

我意识到这个答案缺乏证据/讨论,但我只想说对我来说应该弃用Model.find_by_attribute诸如此类的东西是有意义的,也就是说,即使它们是尚未正式弃用。原因是这些方法必须经过method_missing才能发挥作用。因此,它们不如在场景下仅使用ARel:快。有帮助吗?find_by(x: y)where(x: y).take