0
私はRails 3の問題に遭遇しているようで、私はそれを理解できないようです。 は、ここで私が何をしようとしていますものです:ルビのデータモデルを変更する文字列を評価
att1 = "column"
att2 = "1"
final_column = "#{att1}_#{att2}"
obj.final_column = 4
====> Error
-----> NoMethodError: undefined method `final_column=' for class....
私はこれを行う場合、それはしかし動作します:
obj.column1=4
は、私はそれを動作させるために私のfinal_columnに何ができますか? ありがとう!
私が探していたものとまったく同じですが、ドット表記の使用を避けたいと思っていました。何か欠点があるかどうか知っていますか? –
@MarcoA潜在的な問題は、 'send'が' private'/'protected'可視性をバイパスすることです。そうでなければできないメソッドを呼び出すことが可能です。 –
これは混乱しやすく、エラーが発生する可能性があります。また、ブラウザやユーザーの入力に由来する文字列を使用したくない場合もあります。同様に、 "@ account.send(some_action)"を実行したが、ユーザーが "some_action"を "destroy"に設定した場合はどうでしょうか。あなたは困っているだろう。 – nicholaides