2016-08-23 4 views
1

私は変数をタブ名として使用する方法を探しています。一例として、Ruby:tablenameとして変数

は、実際には次のようになります。

@user = User.new 

しかし、私は

wrktablename = "User" 
@my_table = wrktablename.new 

のようにこれを行うことができますwrktablenameが本当にテーブルごとに異なる値であることを、注意してください名。

さらに言及すると、変数の外にモデル名やテーブル名がありません。 しかし、私はwrktablename.newwrktablename.findのようなすべての機能を使う必要があります。

答えて

5

あなたはRuby on Railsでを使用している場合は、Object.const_get(wrktablename).new

2

を使用することができ、変数であるクラス名に基づいてオブジェクトをインスタンス化するために、あなたはこのようにそれを行うことができます。

"class name".constantize.new 
+0

私はここに変数がありませんか?変数を持つ構文は何ですか?それはのようです 'wrktablename.constantize.new' – Cokiehh

+0

あなたが書いている通りです。 –

関連する問題