[前][次][番号順一覧][スレッド一覧]

rails:2829

From: babie <babie.tanaka@g...>
Date: Mon, 28 Jul 2008 15:13:31 +0900
Subject: [rails:2829] Re: 一画面で、複数テーブル更新するときのvalidate?

ばばです。

form_for の内側で、fields_for というヘルパーを使うと良いと思います。


2008/07/28 14:53 秦 耕造 <k_hada@m...>:
> たびたび失礼します。
> Rails初心者の秦と申します。
>
> 1画面で複数テーブル更新する場合のvalidate
> についての質問です。
>
> 1画面で1テーブル更新する場合以下のように記述すると、
> @model_paraに格納されたエラーを<%= f.error_messages %>
> で出力でき、更に、エラーのある入力項目を反転表示出来ると
> 思います。
> ・view
>   <% form_for(@model_para) do |f| %>
>      <%= f.error_messages %>
>          <%= f.text_field :項目名 %>
>   <% end %>
>
> ・controller
> @model_para = Modelname.new(params[:model_para])
>    if @model_para.save
>             #正常処理
>         ・・・
>          else
>     #エラー処理
>         render :action => "登録画面名"
>          end
>
> ・model
>  validates_presence_of (:項目名, :message => "エラー。")
>
> これが、1画面、2テーブルになるとどの用に記述すれば宜しいでしょうか??
> ・view
>   <% form_for(@model_para) do |f| %>  ###←ここで2テーブル分割りあてる??
>      <%= f.error_messages %>
>          <%= f.text_field :項目名 %>
>          <%= f.text_field :項目名 %>
>   <% end %>
>
> ・controller
> @model_para = Modelname.new(params[:model_para])
> ###   ↓↓↓↓↓ここで2テーブル分割りあてる??
> ###   @model_para2 = Modelname2.new(params[:model_para2])
> ###   @model_para2.save
>    if @model_para.save
>             #正常処理
>         ・・・
>          else
>     #エラー処理
>         render :action => "登録画面名"
>          end
>
> ・model
>  validates_presence_of (:項目名, :message => "エラー。")
>
> ・model2
>  validates_presence_of (:項目名, :message => "エラー。")
>
> たびたび申し訳ありませんが、よろしくお願いいたします。
>
> ------環境は以下の通りです------
>        ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]
>        Rails 2.1.0
>
>
>
> --
> ML: rails@r...
> 使い方: http://QuickML.com/
>



-- 
 babie:
 blog: http://d.hatena.ne.jp/babie/
 mail: babie.tanaka@g...

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

      2828 2008-07-28 07:53 [k_hada@m...         ] 一画面で、複数テーブル更新するときのvalidate?
->    2829 2008-07-28 08:13 ┗[babie.tanaka@g...   ]                                       
      2830 2008-07-28 12:54  ┗[k_hada@m...         ]