オブジェクトの名前を含む文字列に基づいてオブジェクトにアクセスしようとしています。オブジェクトのスコープが設定されています(ユーザーがアクセスを許可されているレコードにのみアクセスできるようにするために、cancanを使用しています)。私は私がしなければならないところにいくつかのコードを以下に含めました:
operation_type:string, one of %w(add sub mult div)
left_operand_object:string
left_operand:string
right_operand_object:string
right_operand:string
def result
r = [access object using left_operand_object]
k = [access object using right_operand_object]
if operation_type == 'add'
r.instance_variable_get('@'+left_operand) + k.instance_variable_get('@'+left_operand)
elsif operation_type == 'sub'
r.instance_variable_get('@'+left_operand) - k.instance_variable_get('@'+left_operand)
...
end
したがって、2つの質問:
r = [access object using left_operand_object]
文字列からの名前に基づいてスコープオブジェクトにアクセスできるようにするには、どうすれば行を完成させることができますleft_operand_object
か?- のようなもの
instance_variable_get
であれば機能しますか、それともcountメソッドなしでのみ機能しますか?left_operand
customers.count
どんな助けでも大歓迎です!