rails:798
From: Hiroshi Takagi <gollum@h...>
Date: Sat, 17 Dec 2005 12:14:23 +0900
Subject: [rails:798] Re: 処理の共通化について
高木宏です。 On Fri, 16 Dec 2005 16:13:55 +0900 bulldog <gungle@g...> wrote: > 1. 各controller(action)で共通的に使用する処理(Cでいうところの共通ライブラリ)を > 作成しようとする場合、Railsではどのような方法で作成するのが一般的で > しょうか? > 現在、LDAPを処理するような共通関数を検討しております。 > この場合、Classなどを作成して、lib配下に置くことが一般的でしょうか? 自作系 は、lib 配下で require でしょうね。 私の場合、model に include/extend したいモジュールや、 ごった煮系のちょっとしたメソッド(日付や時間でよく使うフォーマットの追加 など)をまとめて詰め込んでおく場所として、misc.rb というファイルに突っ込 んでいます。 > 2. いくつかのViewで共通で使用するようなプルダウンメニュー(selectタグ)を > 部品化したいと思っています。 view の共通部品を作る手法としては partial と components が用意されていま す。 > ただし、このメニューはテーブルから検索した内容にしたいと思ってます。 > 例えば、以下のような感じです。 > > # 元となるテーブル。例として部署テーブル > create table busho ( > id int serial primary key, > name varchar(128) > ) > > # 部品化によって、出力される部署用のselectタグ > <select name="busho"> > <option value="1000">部署A > <option value="2000">部署B > <option value="3000">部署C > </select> う〜ん、わたしもこれに相当するマスター参照型のプルダウンメニューはよく作 りますが、 @busho_list = Busho.find(:all) collection_select(:model_name, :busho_id, @busho_list, :id, :name_kanji) と、helper メソッドを使って、二行でできてしまうので、 これを部品化する発想はなかったなぁ〜。 > 上記のようなテーブル検索が絡む共通処理を作成する場合、どのように作成し、 > どのディレクトリ(model?)に配置するのが、Railsでは一般的でしょうか? この程度なら、各view に直接埋め込んでしまいますが、 もし、共通にするなら、lib か components でしょうね。 -- Hiroshi Takagi <gollum@h...> -- ML: rails@r... 使い方: http://QuickML.com/ Web Site: http://wiki.fdiary.net/rails/ ML Archives: http://www.fdiary.net/ml/rails/
790 2005-12-16 08:13 [gungle@g... ] 処理の共通化について -> 798 2005-12-17 04:14 ┗[gollum@h... ] 806 2005-12-19 01:32 ┗[gungle@g... ] 811 2005-12-19 15:18 ┗[gollum@h... ] 814 2005-12-20 14:11 ┗[gungle@g... ]