OTO - Ohshima Tamashima Observatory- - find_or_create Diff
- Added parts are displayed like this.
- Deleted parts are displayed
like this.
rails2.3
データベースに、同じ「knumber」と言うコラムの値をを持ったデータが複数ある場合に、
最新の入力データを得たいとする。そして該当データがない時には新規にデータを作成したいとする。
このような時、Railsではfind_or_createという一度に処理てくれる便利なメソッドがあるので、それを使おうとしたが、
次のように書くと、一番古いデータが表示されてどうしてもうまくいかない
@ki=KigyoInfo.find_or_create_by_knumber( kbango, :order=>'input_date DESC')
find_or_createでは:order=>'input_date DESC'が効かないことが、
./script/consoleを使って調べるとわかった。
しかたがないので、次の様にひとつづつ記述した
@ki=KigyoInfo.find_by_kigyo_number( kbango, :order=>'input_date DESC')
if @ki==nil then @ki=KigyoInfo.new(:knumber=>kbango ) end
----
[[技術的な覚書き]]へ戻る
[[OTO-Ohshima Tamashima Observatory-]]トップへ戻る
{{counter}}
データベースに、同じ「knumber」と言うコラムの値をを持ったデータが複数ある場合に、
最新の入力データを得たいとする。そして該当データがない時には新規にデータを作成したいとする。
このような時、Railsではfind_or_createという一度に処理てくれる便利なメソッドがあるので、それを使おうとしたが、
次のように書くと、一番古いデータが表示されてどうしてもうまくいかない
@ki=KigyoInfo.find_or_create_by_knumber( kbango, :order=>'input_date DESC')
find_or_createでは:order=>'input_date DESC'が効かないことが、
./script/consoleを使って調べるとわかった。
しかたがないので、次の様にひとつづつ記述した
@ki=KigyoInfo.find_by_kigyo_number( kbango, :order=>'input_date DESC')
if @ki==nil then @ki=KigyoInfo.new(:knumber=>kbango ) end
----
[[技術的な覚書き]]へ戻る
[[OTO-Ohshima Tamashima Observatory-]]トップへ戻る
{{counter}}