我有一些具有某些属性的对象的集合。 我也有一个常量ID的数组。将常量数组与对象数组进行比较
我想要返回具有存在于常量数组中的ID的整个对象。
这是我迄今为止,但它只是返回true或false每个,我需要它返回的所有对象的数组:
some_object_attributes.collect { |attr| (Constant::SOME_IDS.include? attr.object.object_type_id)}
我怎样才能回报每一位attr.object
它有一个常量数组中的ID?
常数中有多少个ID?对象数组的大小是多少?使用'Set'而不是数组可能会提高性能。 – spickermann
这是不是一个查询参数的原因?就像'scope:in_constant_array, - > {where(object_type_id:Constant :: SOME_IDS)}''那么你可以利用SQL来完成提升而不是在mem – engineersmnky
常量中只有十几个ID .. – user3437721