我想允许用户指定的函数计算某些属性,并希望这个函数存储在一个泛型类。也就是说,类的每个实例都具有相同的接口,但调用'calculate'方法的结果因用户提供的函数而异解析方法,并将其存储在数据库
我还想序列化此类并将其存储在数据库中供以后使用使用。这就是我在想的
class LogicalCharge < Charge
attr_reader :name, :type, :formula, :threshold
def initialize(name: nil, type: nil, formula: nil, threshold: nil)
super(name: name, type: type)
@formula = formula
@threshold = threshold
end
def parse(formula: nil)
end
def calculate(dimensions: nil)
parse(formula: formula).call(dimensions) < threshold
end
有关如何从这里继续下去的任何建议?
执行用户提供的代码?坏的主意(来自安全POV) – 2014-09-10 10:01:30
对另一种方法有何建议? – Tarlen 2014-09-10 11:13:14