如果我们想使我们需要把它们声明为我们的模型liquid_methods
从液体模板访问的方法,像这样:获取所有公共方法和属性的getter和传递他们liquid_methods
class User < ActiveRecord::Base
liquid_methods :name, :adress, :any_method_we_want
...
的东西是我们的模型中定义了很多东西(属性和公共方法),这将是一个非常有用的目标,当我们添加新的模型时,不要忘记将它们声明为liquid_methods,更不要说模型顶部的一个非常丑陋的列表。所以问题是,我想声明所有属性获取器和公共方法应该被“液化”,是否有一种更奇特的方式,而不是像手动例子那样总是手动声明它们的液体?你会怎么做?
获得分数是这样的伪代码(可能不工作):
class User < ActiveRecord::Base
methods = self.public_methods + self.attribute_names
liquid_methods methods
...