没有什么副作用。主要是可以让用户写出真正的方法链
0> "hello".methods.grep /str/
=> [:strip, :rstrip, :to_str, :lstrip, :strip!, :lstrip!, :rstrip!]
一般建议带参数的时候都带上括号这样代码更易读。在类中调用方法除外,在 Rails 里一般调用类方法都会采用类似于宏定义的写法
class Post < ApplicationRecord
belongs_to :category
validates :title, presence: true
end
其实写成这样也没差,只是没人会这么去写
class Post < ApplicationRecord
belongs_to(:category)
validates(:title, presence: true)
end