人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

railsでコントローラに関連付けられているテーブルとは別のテーブルのデータを読み書きするにはどうすればいいんでしょうか?

具体的には、appleというコントローラにはapplesというテーブルがあるとします。
appleコントローラからorangeというコントローラのorangesテーブルのデータを読み書きしたいです。

可能でしょうか?

●質問者: nagiwind
●カテゴリ:インターネット ウェブ制作
✍キーワード:Apple ORANGE Rails コントローラ データ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● moro
●60ポイント

http://www.rubyonrails.org/

URLはダミーです。

Rails 1.2.xだと言う前提です。

たぶん何もしなくてもまったくフツーにアクセスできると思います。つまり

class AppleController < ApplicationController
 def list
 @apples = Apple.find(:all)
 @oranges = Orange.find(:all) # <= ここ
 end
end

で動くはずです。

コントローラとモデルは一対一対応するものではないので、そのまま呼び出して問題ありません。

また、古いRails(1.1.x系もかな?)の場合は、コントローラでmodel宣言をする必要があります。その場合

class AppleCotnroller < ApplicationController
 model :orage
 ...
end

とかやらないとダメだったかと思います。

以下余談

# 設計として、コントローラとモデルを必ず対応させる、というscaffold的な

# 作り方も検討してみる余地はありますが。

◎質問者からの返答

ありがとうございました。うまくいきそうです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ