1 名前:nobodyさん mailto:sage [2008/04/06(日) 04:59:29 ID:???] 無いのはどうしてだろう? 消えたのか? 流行ってないのか 死亡
117 名前:nobodyさん mailto:sage [2008/05/09(金) 12:59:17 ID:???] >>116 ちょーさんくす あいしてるよ
118 名前:116 mailto:sage [2008/05/09(金) 13:39:24 ID:???] キーバインディング変更はこんな感じで (define-key rails-minor-mode-map "\C-c\C-p" 'rails-lib:run-primary-switch) あとは、Rail2.0でファイル拡張子に.html.erbを使うようになったのに対応して rails.elの中でこんな設定をしておくとよい (defvar rails-templates-list '("html.erb" "erb" "rhtml" "rxml" "rjs" "haml" "liquid"))
119 名前:nobodyさん mailto:sage [2008/05/09(金) 14:47:55 ID:???] Railsで select a.id, a.name, o.name from accounts a, organizations o where a.organization_id = o.id order by o.name; というSQLを発行するにはどうしたらいいですか。 Account.find(:all, :include[:organization]) でOK?
120 名前:nobodyさん mailto:sage [2008/05/09(金) 14:49:41 ID:???] >>119 find_by_sql 変数取り込むならちゃんとエスケープしてからやれよ?
121 名前:nobodyさん mailto:sage [2008/05/09(金) 21:14:37 ID:???] >>120 さんくす > 変数取り込むならちゃんとエスケープしてからやれよ? こういう心遣いができるおまえは優秀なエスパー これからも地球の平和を守ってくれ
122 名前:nobodyさん mailto:sage [2008/05/09(金) 22:30:39 ID:???] >>121 今SQLインジェクションアタックが盛んだからじゃね? ttp://www.tokumaru.org/d/20080502.html 普通は :conditions => ['hoge = ?' , params[:hoge]] のようにすればいいけど、 フルSQLとかに変数使いたい時は Hoge.find_by_sql("select * from hoges where hoge = #{connection.quote(params)}") がオヌヌメ ttp://pirochin.blogspot.com/2007/08/activerecordbaseconnectionquote.html
123 名前:nobodyさん mailto:sage [2008/05/10(土) 01:12:35 ID:???] sanitize_sql(["select * from hoges where hoge = ?", params[:hoge]])
124 名前:nobodyさん mailto:sage [2008/05/10(土) 01:35:58 ID:???] redmineを www.example.com/redmine/ で動かすことには成功しました。 www.example.com/~foo/redmine/ で動かしたい場合には httpd.confをどのようにすればよいのでしょうか DocumentRoot /usr/local/apache2/htdocs RailsBaseURI /~foo/redmine とすると Passenger error #2 Passenger thought that the Rails application's "public" directory is "/usr/local/apache2/htdocs/~foo/redmine". となり、必ずDocumentRoot配下を見るようになってしまいます。
125 名前:nobodyさん mailto:sage [2008/05/10(土) 01:50:18 ID:???] 情報足りないですねorz Linux上でApache2.2.8+mod_rails(passenger-1.0.5)です。
126 名前:nobodyさん [2008/05/10(土) 01:55:26 ID:NOkob+Vn] >>125 おぉ!mod_railsの情報か!! ほとんどhttpd.confに書くんだっけ? app/controller/foo/ app/views/foo/ って内部にサブディレクトリ切るんじゃダメだろうなぁ・・・
127 名前:nobodyさん mailto:sage [2008/05/10(土) 01:55:53 ID:???] ~を使えるのはUserDirそれ自体のみじゃないかな。 /~foo を本来のファイルシステム上の絶対パスで書いたらどうよ?
128 名前:124 mailto:sage [2008/05/10(土) 02:10:09 ID:???] >>126 Apache上でRuby on Railsアプリケーションを動かす/Passenger(mod_rails for Apache)の利用 ttp://redmine.jp/tech_note/apache-passenger/ の通りにやるとサクッと動きました。 >>127 RailsBaseURI /home/foo/public_html/redmine と書いて ~foo/redmineにアクセスすると Apacheがrailsを認識してくれず、普通のindexリスト表示になってしまいます。
129 名前:nobodyさん mailto:sage [2008/05/10(土) 23:24:32 ID:???] URLが~foo/でなきゃいかん理由って何よ? ~fooの絶対パスを/foo に Alias して example.com/foo/redmine じゃだめなん?
130 名前:nobodyさん [2008/05/12(月) 12:32:39 ID:MkPAtgFM] 無料レンタルサーバーでRails使えるところあったら教えてください。
131 名前:nobodyさん mailto:sage [2008/05/12(月) 19:17:18 ID:???] >>130 ないと思います。GoogleAppEngineでサポートされることを祈っておいてください。 質問なんだけど、migrationで、add_columnするときに、:null=>falseを指定できますか。 データが1行もないときはできると思うけど、すでにデータが入っているテーブルに:null=>falseつきでadd_columnしたいんです。 あるいはadd_columnしたあとにfind(:all).each でデータを設定してから、:null=>falseを追加するとか。
132 名前:nobodyさん mailto:sage [2008/05/12(月) 19:40:44 ID:???] >>131 change_column という大変便利なものをみつけてしまいました。 add_column :items, :newcolumn, :string Items.find(:all).each {|item| item.newcolumn = '...'; item.save! } change_column, :items, :newcolumn, :string, :null=>false でいけました。
133 名前:nobodyさん mailto:sage [2008/05/13(火) 10:33:55 ID:???] >>132 > Items.find(:all).each {|item| item.newcolumn = '...'; item.save! } なんとなく、めちゃくちゃ効率悪そうな気がするのは俺だけ?
134 名前:nobodyさん mailto:sage [2008/05/13(火) 11:06:43 ID:???] データが数十万件とかあったら泣けるなw :default => false 指定するのじゃダメだろうか? カラム追加なら最初はデータ無いだろうし、 必要なデータは後でバッチかupdate文で更新するみたいな。 最悪、execute('alter add_column文')で無理やり書くとか。 結果出てるのに茶々入れてすまん
135 名前:nobodyさん [2008/05/14(水) 10:42:18 ID:4b0MQpYR] >>130 InfoQ: HerokuとMorph AppSpaces:Railsホスティングの新しい二つのソリューション www.infoq.com/jp/news/2008/04/heroku-hosting-morph-appspaces
136 名前:nobodyさん [2008/05/14(水) 21:53:25 ID:ToATEiN6] 過疎ってるなage
137 名前:nobodyさん mailto:sage [2008/05/16(金) 12:30:03 ID:???] rspecを始めたばかりのものです。 テスト結果が大量にある時にどこでエラーが起きたか、コンソール表示だけだと わかりにくいんですが、見やすく整形してくれるツールのようなものは ありますか? Story Runnerも試していて、プレゼンみてると ttp://blog.davidchelimsky.net/files/BDDWithRspec.RubyConf.2007.pdf の38ページ(Spec Framework)にそれっぽいものが出ていて使ってみたいんですが リリースされているんでしょうか?
138 名前:nobodyさん mailto:sage [2008/05/16(金) 14:26:01 ID:???] >>137 それはRspecとか関係なく、MacのGrowlじゃなかろうか ttp://blog.tkmr.org/tatsuya/show/361-rails-macosx-rspec-zentest-growl さぁ今すぐMacを買いに行くんだ UTF-8 コードのRailsアプリはWinで開発よりMacの方がいいよなぁ・・・
139 名前:nobodyさん mailto:sage [2008/05/17(土) 00:27:54 ID:???] そのプレゼンに載ってるのは、エディタTextMateの RSpecバンドルの機能ですね。 とりあえず標準の範囲なら、spec/spec.optsで --format specdoc --backgtrace と書くとか。
140 名前:nobodyさん mailto:sage [2008/05/17(土) 00:28:14 ID:???] backtraceですた
141 名前:nobodyさん mailto:sage [2008/05/17(土) 15:18:33 ID:???] うちも会社の開発環境、ほとんどみんなMacになった。 やっぱり楽。 それまでは WindowsでVMwareとかは重くて断念。 WindowsでLinuxにログイン、が長かったけど、 いろいろ調査するのに個人ごとに環境があった方が良いって事になって結局Macに。 セミナーとかでも講演してる人、Macが多かったし。 デザイン組み込みとかの時も、 デザイナから上がってきた画像を目で見て確認するのに、 Macのopenコマンドとか、QuickLookがかなり便利。
142 名前:nobodyさん mailto:sage [2008/05/17(土) 15:27:47 ID:???] 我が輩はWindows XP + InstantRails + Eclipse + RadRailsを使っているなり。 RadRails様々なり。
143 名前:nobodyさん mailto:sage [2008/05/17(土) 15:39:08 ID:???] >>142 うちも最初は同じような環境だったんだけど Linux(UNIX系)でしか動かないソフトの使用が決定になって断念した。
144 名前:nobodyさん mailto:sage [2008/05/17(土) 18:47:59 ID:???] Windows + colinux + vim( + zsh + screen) puttyでsshで繋いで作業 eclipse使ってたときもあったけど重くて嫌になった win上で開発するのはお勧めできない >>141 vmwareは重いけどcolinuxは結構軽いよ そりゃ金があるならmacに越したことはないけど
145 名前:nobodyさん mailto:sage [2008/05/17(土) 21:18:51 ID:???] 俺はWinXP上でRadRails(単体版) 最近はMacOSに興味あるなー
146 名前:nobodyさん mailto:sage [2008/05/17(土) 22:05:37 ID:???] 俺はNetBeans 6.1。Rails対応部分はかなり良いできだよ。 いろいろなところで補完が効くのがいい。
147 名前:nobodyさん mailto:sage [2008/05/17(土) 22:14:09 ID:???] AptanaとかNetBeansて使いやすいんだが、重くね? C2D1.8G mem1Gのマシンじゃギリギリだ・・・orz mem2G以上はやっぱほしいよな
148 名前:nobodyさん mailto:sage [2008/05/17(土) 22:45:26 ID:???] >>146 俺はNetBeansとか補完IDE無しでRuby書ける奴凄いと思うよ。 理解できない。
149 名前:nobodyさん mailto:sage [2008/05/17(土) 22:48:53 ID:???] 会社はThinkPad X60とかなんで、AptanaとかNetBeans重くて断念。 Linuxサーバに繋いでvi, emacsでやってる。 補完にはあまり頼らないなぁ。
150 名前:nobodyさん mailto:sage [2008/05/17(土) 23:04:09 ID:???] 軽いとか重いとかは環境によるから一概には言えないけど Netbeans 6.1は結構軽くなってると思うけどなあ。 あとRuby機能のみ入ったのをダウンロードするのが軽くて良いと思う。
151 名前:nobodyさん mailto:sage [2008/05/17(土) 23:14:55 ID:???] Rubyのみとかできるのか〜 補完機能は要らないけど、Grepやエクスプローラー機能は秀逸だし 使ってみよう。d >>149 XGAモニタでIDEはオススメできないw
152 名前:nobodyさん mailto:sage [2008/05/18(日) 00:37:58 ID:???] 補完=無駄な入力省略とすら・・・betterPerlな人たちか・・・
153 名前:nobodyさん mailto:sage [2008/05/18(日) 01:40:08 ID:???] いや、クラス名やメソッド名が元から無駄に長くないので。
154 名前:nobodyさん mailto:sage [2008/05/18(日) 01:45:34 ID:???] 長さだけの問題じゃねーだろw
155 名前:nobodyさん mailto:sage [2008/05/18(日) 03:36:48 ID:???] >>147 メモリ1.5GBを境に劇的に変わると思う
156 名前:nobodyさん mailto:sage [2008/05/18(日) 21:32:48 ID:???] ActiveRecordで任意のSQL文を発行するにはどうしたらいいですか 具体的には alter table ... とか select setcount() とかを実行したいです。 >>154 同意
157 名前:nobodyさん mailto:sage [2008/05/19(月) 00:20:37 ID:???] Model.find_by_sql ActiveRecord::Base.connection.execute
158 名前:nobodyさん mailto:sage [2008/05/19(月) 02:13:13 ID:???] >>142 →>>144 →macの流れだな。 aptanaは前のマシンだと重くて駄目だった。
159 名前:nobodyさん mailto:sage [2008/05/19(月) 11:06:18 ID:???] aaa.find(:all, :include=>:bbbb, :select=>'name')のように別テーブルと結合した場合、 :select が効かないんですけどなんとかなりませんか?
160 名前:nobodyさん [2008/05/19(月) 14:17:14 ID:8IiAUL/0] >>141-151 すごい参考になりました。 みなさんけっこう工夫されてますね
161 名前:nobodyさん mailto:sage [2008/05/19(月) 15:08:45 ID:???] >>159 ’’の中はSQLだから hoge = Foo.find :all , :select => 'foos.id , baas.name', :include => [:baa] みたいにどのテーブルのどのカラムって指定しないと無理じゃね?
162 名前:nobodyさん mailto:sage [2008/05/19(月) 15:35:10 ID:???] >>157 さんくす ActiveRecord::Base.connection.executeを使わせてもらいました。
163 名前:159 mailto:sage [2008/05/19(月) 16:39:27 ID:???] >>161 テーブル名.カラム名って書いてもやっぱりだめでした。 必要なカラムの値のみ取得したいのですが、全カラムの値が返ってきます。 :includeを使うと SELECT * でSQLが作られるんでしょうかね?
164 名前:159 mailto:sage [2008/05/19(月) 16:42:39 ID:???] >>161 お礼言ってなかった。 サンクス。 その後、:include ではなく :joinsを使えば :selectオプションが効くのはわかりました。
165 名前:nobodyさん mailto:sage [2008/05/19(月) 18:27:04 ID:???] Rubyをシェルスクリプト的に使っているんですけど、 あるスクリプトを実行し終わったらirbに入るようなこと できますか? 要するにirbでいろいろ操作したいんですけど、 そこにいたるまで初期化命令が沢山あるんで、 require 〜 require 〜 require 〜 をした状態でirbのシェルに入りたいのです。
166 名前:165 mailto:sage [2008/05/19(月) 18:40:47 ID:???] 自己解決しました
167 名前:nobodyさん mailto:sage [2008/05/19(月) 19:00:21 ID:???] >>164 :include はモデル間でのリレーション :joins はSQLでのリレーション :select区指定するような、動的な場合は:join使うとか モデルにそれ用のメソッド追加するといいかもしれない
168 名前:nobodyさん mailto:sage [2008/05/19(月) 19:20:30 ID:???] create table books ( id integer primary key auto_increment, title varchar(256) not null, price integer ); というテーブルがあったとき、Book#price は nil を返す可能性があります。 そこで class Book < ActiveRecord::Base alias _price price def price _price || 0 end end みたいなかっこわるいことしてるんですけど、もっといい方法があれば教えてください。
169 名前:nobodyさん mailto:sage [2008/05/19(月) 19:28:31 ID:???] テーブル定義で price integer not null default = 0 , migrateだと default => 0 ,:nil => false のような指定じゃダメか?
170 名前:nobodyさん mailto:sage [2008/05/19(月) 22:16:59 ID:???] >>165-166 自己解決した内容プリーズ irb -rhoge -rhage -rhige ?
171 名前:nobodyさん mailto:sage [2008/05/19(月) 23:47:19 ID:???] .irbrc に書いとくのもひとつみたい
172 名前:nobodyさん mailto:sage [2008/05/20(火) 10:31:27 ID:???] >>165 個人的にはどういう用途でrubyスクリプト書くのか気になるな
173 名前:nobodyさん mailto:sage [2008/05/20(火) 10:41:32 ID:???] require 'irb' IRB.start でirbのプロンプトが出せるので、そこまでの準備はご自由にという感じだな。
174 名前:nobodyさん mailto:sage [2008/05/20(火) 13:01:56 ID:???] 2.1の新機能はよさそうですね。特に named_scope。 正式リリースが楽しみです。
175 名前:nobodyさん mailto:sage [2008/05/20(火) 14:35:29 ID:???] ruby script/console でirbみたいなのが起動しますが、自分のスクリプトの中でrailsアプリを読み込むにはどうしたらいいでしょうか。 #!/usr/bin/env ruby require '....' MyModel.find(:all).each do |model| puts "#{model.id},#{model.name}" end みたいなのが作りたいです。
176 名前:nobodyさん mailto:sage [2008/05/20(火) 15:57:56 ID:???] $ cat script/hoge #!/usr/bin/env ruby require File.dirname(__FILE__) + '/../config/boot' require RAILS_ROOT + '/config/environment' # 以下で好きなことをする。 みたいな感じ。
177 名前:nobodyさん mailto:sage [2008/05/20(火) 22:08:58 ID:???] f.select で、class="foo" とか onclick="alert()" とかをつけたい場合はどうするんですか。 f.select :foo, :class=>"foo", :onclick=>'alert()' とかしてもだめでした。
178 名前:nobodyさん mailto:sage [2008/05/21(水) 00:15:59 ID:???] >>177 f.select :foo, {}, :class => "foo", :onclick => 'alert()' かな。 ヘルパメソッドへのオプションとHTMLを作るときのオプションを それぞれhashで与える必要があり、なおかつ両方とも省略可能なので、 hashが2つあることがわかるように書く必要があるはず。
179 名前:nobodyさん mailto:sage [2008/05/21(水) 03:54:23 ID:???] >>168 呼び出す側で to_i か def price read_attribute_before_type_cast(:price).to_i end みたいな?
180 名前:nobodyさん mailto:sage [2008/05/21(水) 16:38:32 ID:???] Railsでスプレッドシート作ることってできますか? もしやっている人のホームページとかわかればお願いします。
181 名前:nobodyさん mailto:sage [2008/05/21(水) 21:02:42 ID:???] ここって質問スレ?
182 名前:nobodyさん mailto:sage [2008/05/21(水) 22:27:20 ID:???] 違うけどほかのスレは ことごとく落ちました。
183 名前:nobodyさん mailto:sage [2008/05/21(水) 22:28:25 ID:???] >>180 できるんじゃね? まあスプレッドシートなら ほとんどをJavaScriptで作ることになるがw
184 名前:nobodyさん [2008/05/23(金) 10:09:55 ID:MzFkkhDr] ◆【Web】Ruby on Rails用 統合開発環境(IDE) 比較レポート Ruby on Rails対応のIDEを使用する場合、NetBeans、Eclipse(プラグインを 追加)など複数の選択肢がありますが、今のところデファクトスタンダードと 呼べるものは存在しません。そこで本稿では、共通の基準に対して複数のIDEを 比較し、各製品の特徴と長所、短所を明らかにします。またRuby on Railsによる 開発を始めるにあたって現時点で最も使いやすいIDEを選定します。 codezine.jp/a/article/aid/2482.aspx
185 名前:nobodyさん [2008/05/24(土) 23:44:37 ID:ojuOd+8v] Railsの人たちはヒアドキュメントを再発明してしかも正当化してるわけだが。 Web開発をなめるな。
186 名前:nobodyさん mailto:sage [2008/05/25(日) 02:46:51 ID:???] Twitterが重いのはRuby on Railsで造られてるから?
187 名前:nobodyさん [2008/05/25(日) 03:39:36 ID:fA12GUeB] >>185 はコピペ >>186 最近phpに切り替えているらしい。 Railsのせいかどうかはわからないけど、twitterの中の人はrailsのせいにしたがってる
188 名前:nobodyさん mailto:sage [2008/05/25(日) 04:54:54 ID:???] 食べログがRailsになって、価格コムグループの中のサイトも Railsが多くなってるみたいね。 最近できたエンジニア向けサイトや映画のサイトもRailsだった。
189 名前:nobodyさん [2008/05/25(日) 11:37:31 ID:OXIuJTVX] GrailsアプリならJavaだからWebLogicとかでも動かせるんだがな
190 名前:nobodyさん mailto:sage [2008/05/25(日) 13:28:13 ID:???] >>186 利用者が多いから、とも言える 過疎サイトならrailsで十分
191 名前:nobodyさん mailto:sage [2008/05/25(日) 14:02:45 ID:???] Grailsって、名前だけ見るとPythonかと思ってしまうな。
192 名前:nobodyさん mailto:sage [2008/05/25(日) 14:16:23 ID:???] googleの息かかってるの?
193 名前:nobodyさん mailto:sage [2008/05/25(日) 14:26:15 ID:???] ぐれる
194 名前:nobodyさん mailto:sage [2008/05/25(日) 14:47:17 ID:???] groovyのgだな。
195 名前:nobodyさん mailto:sage [2008/05/25(日) 14:48:13 ID:???] grailが杯(文脈的に聖杯)を思い出させるからな > python
196 名前:nobodyさん [2008/05/25(日) 18:11:22 ID:fl6HSoNb] モデルの中で@test = "test"とするのと、self.testというのは何が違うんでしょうか?
197 名前:196 mailto:sage [2008/05/25(日) 18:12:08 ID:???] すみません。@test = "test"とself.test = "test"です。 挙動が違うようなので質問させていただきました _ _
198 名前:nobodyさん mailto:sage [2008/05/25(日) 18:41:52 ID:???] ActiveRecordの話で、対象モデルにtestという属性がある場合の話? self.test = "test" で見るのは @test ではないよ。
199 名前:nobodyさん mailto:sage [2008/05/25(日) 18:42:46 ID:???] ruby-users.jpは、railsを使って作られているらしい。 ソースがCodeReposで公開されてた。 ttp://ruby-users.jp/
200 名前:nobodyさん mailto:sage [2008/05/25(日) 20:23:34 ID:???] 今更ながらだけどOpenIDいいな。
201 名前:196 mailto:sage [2008/05/25(日) 22:42:11 ID:???] >>198 ありがとうございます。もう一回勉強しなおしてきます _ _
202 名前:nobodyさん mailto:sage [2008/05/26(月) 00:18:56 ID:???] RESTで作りたくても確認画面入れないといけないのがなぁ…。
203 名前:nobodyさん mailto:sage [2008/05/26(月) 02:25:21 ID:???] Railsってググれば大抵の事は出てくるし、 ブログでノウハウ出してる所も多いから ここで聞くってなかなか無い・・・ 質問スレになるのはアレだが、イマイチ盛り上がりに欠けるよなぁ・・・ なんというか、寂しい
204 名前:nobodyさん [2008/05/26(月) 06:20:41 ID:dq0EoCgj] restful_authenticationのAPI Documentて何処にありますか? 探し方が悪いのか一番見つかりそうで見つからないです。。
205 名前:nobodyさん mailto:sage [2008/05/26(月) 11:50:04 ID:???] restful_authenticationくらいならソース読んだ方が早いぞ
206 名前:nobodyさん mailto:sage [2008/05/26(月) 13:24:37 ID:???] >>203 Ruby自体、盛り上がりに欠ける。 他のRubyスレも閑古鳥が鳴いている。どげんかせんといかん
207 名前:nobodyさん mailto:sage [2008/05/26(月) 14:07:36 ID:???] 別に無理に盛り上がらなくてもいいんじゃね こんなもんだと思うけど まあブログに書くほどでもなかったりとか書きにくかったりする 泥臭いtipsとかバッドノウハウとか 実際のところXXXの問題はどうやってるのかとか そういうのがもっとあればなーとか 2chなんだから良い意味でもっと書き捨てて書き殴れよ的な
208 名前:nobodyさん mailto:sage [2008/05/26(月) 14:56:05 ID:???] じゃあ燃料投下 最近Rails本の出版ブームだけどこの動きは何かね?裾野が広がってるとみていいんだろうか それから2への完全移行を検討してるんだけどみんなの意向具合はどう?俺は既存プラグインの動作確認、ページネーション問題が解決しそうにないので後半年は待つしかないと思ってる 自分のスキル不足も原因だけどね
209 名前:nobodyさん mailto:sage [2008/05/26(月) 15:17:25 ID:???] Rails本増えた事で、 とっつきやすくなって始めてくれる人がいれば嬉しいな。 Rails2移行は結構難航するらしいけど、 とりあえず、まずは、warning出ないようにしていく事からはじめて行けば 楽らしいぜ。 Rails2化もそうだけど、Ruby1.8.7正式リリースも今後あるだろうし、 スケジュール取るならそれからでもいいと思うぜ。
210 名前:nobodyさん mailto:sage [2008/05/26(月) 18:38:28 ID:???] > 最近Rails本の出版ブームだけどこの動きは何かね? 売れると思ったから出した。公開はしていない。
211 名前:nobodyさん mailto:sage [2008/05/26(月) 20:15:27 ID:???] >>199 何でも出来るみたいだけど、これって、セキュリティー的に問題ないの?
212 名前:nobodyさん [2008/05/26(月) 20:30:51 ID:zf9CrWER] Rails初心者です。 質問させてください。 ActiveRecordを使って、複数のレコードをCreateして、複数レコードを同時にコミット (save)したいのですが、どうしたらイイですか? hoge1=Hoge.new(val=1) hoge2=Hoge.new(val=2) hoge1,hoge2を同時にsave(コミット)したい。
213 名前:nobodyさん mailto:sage [2008/05/26(月) 20:50:15 ID:???] >>212 トランザクションを張るといいと思うよ。 Hoge.transaction do 〜略〜 hoge1=Hoge.new(val=1) hoge2=Hoge.new(val=2) end
214 名前:nobodyさん [2008/05/26(月) 22:27:05 ID:zf9CrWER] 212です。ご解答ありがとうございます。 Hoge.transaction do for i in 0..3 do Hoge.create(:val=i) end end こんな使い方もおkですか?
215 名前:nobodyさん mailto:sage [2008/05/26(月) 22:44:08 ID:???] >>214 OK トランザクションの中でfor文廻しても問題茄子! でも、for文は変数のスコープルールが変わってて、 for i in 0..3 do Hoge.create(:val=i) end のあとで p i のように変数が参照できちゃうから注意な。 普通は繰り返し変数と同名な変数は書かないが
216 名前:nobodyさん [2008/05/26(月) 23:01:46 ID:zf9CrWER] 『while や for がスコープを作らない』って件ですね。了解です。 もうちょっと聞かせてください。先の例のような場合、create!にして rescueでエラーハンドリングしとっくのが定番ですか?
217 名前:nobodyさん mailto:sage [2008/05/26(月) 23:12:47 ID:???] >>216 Hoge.transaction do begin create! rescue エラー処理 end end トランザクション内でエラーが発生した時、 ロールバックしたいなら例外を投げないとダメだから 必要だぜ。