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

rails:2358

From: Tetsuhisa MAKINO <t-makino@w...>
Date: Mon, 03 Sep 2007 16:58:18 +0900
Subject: [rails:2358] Re: create時のidの値

牧野と申します。

Asai Arito wrote:
> 浅井と申します。
>
> ActiveRecordの新規作成時に、auto incrementされる
> IDの値を用いて、同じオブジェクトの別の属性を決定したいのです。
>
> 最初、一旦saveしてから、idを取得して、属性を変更して再度save
> していたのですが、ここをコールバックを用いて書き直しています。
>
> after_createの中でidを取得して、再度saveすると無限呼び出しに
> なってしまいますよね?
>   
なりますか?
after_create は新規保存時だけでその内部で save しても実際には update の
処理になり、
after_create のコールバックは呼ばれないと思いますが。

確か、以前似たようなことをした記憶があるので大丈夫と思います。
# 上記解釈が正しいかはちょっと分かりませんが……^^;
> コールバックの中でのsaveで再度コールバックされないように
> するか、もしくは、before_saveの中でidをあらかじめ知る方法など
> はあるでしょうか?
>
> 前者であればフラグでコールバック中でreturnしてもよいのですが、
> コールバックが他にも呼び出しを持っているので避けたいです。
>
> よい知恵、私の調査不足な点がありましたらご教示ください。
> よろしくお願いします。
>
>
> --
> ML: rails@r...
> 使い方: http://QuickML.com/
>
>
>   


-- 
牧野 哲久 <t-makino@w...>
株式会社 ワコムアイティ
システム開発部 WDT システムエンジニア
ADDR: 島根県松江市北陵町43
TEL: ????-??-????


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

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

      2349 2007-09-01 16:41 [jyo555@w...         ] データーベースに接続できない            
      2350 2007-09-02 09:31 ┗[parin_25@m...       ]                                       
      2352 2007-09-02 17:28  ┗[jyo555@w...         ]                                     
      2353 2007-09-03 08:10   ┣[water@t...          ]                                   
      2362 2007-09-04 19:15   ┃┗[jyo555@w...         ]                                 
      2354 2007-09-03 08:44   ┗[arito_asai@f...     ] create時のidの値                  
      2355 2007-09-03 09:58    ┣[marui@a...          ]                                 
      2356 2007-09-03 10:17    ┃┗[arito_asai@f...     ]                               
      2357 2007-09-03 10:23    ┣[bsdmad@g...         ]                                 
->    2358 2007-09-03 09:58    ┗[t-makino@w...       ]