Ruby on RailsでSQL呼び出し時のテーブル名に接頭辞を設定したいのですがどうしたらよいでしょうか?
Ruby on RailsでSQL呼び出し時のテーブル名に接頭辞を設定したいのですがどうしたらよいでしょうか?
一つ一つマッピングする方法は見つかったのですが、一括で設定する方法が見つからず質問させていただきました。
回答(2件)
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示
No.2ベストアンサー20pt
>>一つ一つマッピングする方法は見つかったのですが、一括で設定する方法が見つからず質問させていただきました。
一括で設定がどういうことを意図するか不明ですが、
config/environment.rb の最後に
ActiveRecord::Base.table_name_prefix = "sys_"
(接尾なら"_suffix")
のように追加する方法があるようです。(試していません。)
ちなみにidフィールドも変更する場合
ActiveRecord::Base.primary_key_prefix_type = xxxxxxx
なんて指定方法もあるようです。
ただ、「Railsに逆らわずに、できるだけRailsの規約にしたがうべきです」ということも書かれています。
参考資料:「Rails レシピ/オライリー・ジャパン」
2章データベースに関するレシピ/レガシーデータベースの統合より
この回答へのお礼
まさに求めていた答えをありがとうございます。
レンタルサーバを使っているのですが、
データーベースが一つしか作成できないので
テーブル名が衝突しないように質問させていただきました。
参考資料も見てみようと思います。
No.1ベストアンサー10pt
詳しくは知らないので方法はあるのかもしれませんが…。
Ruby on Railsの場合、Ruby on Railsの流儀で名前をつけることを強制される部分があるので、「テーブル名かクラス名を変えなさい」が正解のような気がします。
この回答へのお礼
ありがとうございます。
参考になりました。
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示












