1 名前:nobodyさん [2009/09/13(日) 20:49:34 ID:kz4rC4Dx] ■前 Ruby on Rails Part7 pc11.2ch.net/test/read.cgi/php/1241100447/ ■参考サイト <英語> 本家:www.rubyonrails.org API document:api.rubyonrails.com/ 開発者のblog:weblog.rubyonrails.org/ 参考wiki:wiki.rubyonrails.org/rails <日本語> Rails' wiki: wiki.fdiary.net/rails/ ■参考スレ(プログラム板) Rubyについて Part 37 pc12.2ch.net/test/read.cgi/tech/1251029267/ Ruby 初心者スレッド Part 30 pc12.2ch.net/test/read.cgi/tech/1249687283/
324 名前:nobodyさん mailto:sage [2009/10/28(水) 19:55:21 ID:???] >>323 submitを一つのformに複数置く場合、アプリではsubmitを名前で 区別して動作を変えることができる。 結果表示の方だが、確か、formにも target="_blank" を指定できたと 思う。ただし、今回は、一つのformの複数のsubmitという条件なので、 片方のときだけ、実際にサーバにデータを送る寸前にtargetをすり替える ようなJavaScriptを用意する必要があると思う。
325 名前:nobodyさん mailto:sage [2009/10/29(木) 09:41:06 ID:???] >>324 サンクス そっか、submitの名前で区別して別の処理すればいいか target="_blank"相当のボタン押下時の埋め込みですが、JavaScript試してみます。 というか、ちょっと試してみて、上手く言ってないので、JavaScript関連スレでお聞きしたいと思います。 ありがとうございました
326 名前:313 mailto:sage [2009/10/29(木) 11:06:29 ID:???] >>318 >>319 提案とお気遣いありがとうございます。 使用しているDBは別のフレームワークで利用しているもので、 それにRailsで拡張アプリみたいにしてみたかったのでカラムの変更なしが前提でした。 でも本来ならばRails方式に変更した方がいいし、別フレームワークでもRailsと同じ方式でカラム命名ができるので、 Rails側アプリが巨大化する前に手をうとうと思います。 Railsの生産性の高さに元アプリから作り直しそうな勢いですw
327 名前:nobodyさん mailto:sage [2009/10/30(金) 02:39:16 ID:???] 3.0って1.9.2が出たあとか?来年の4月に洋書で本が出るようだが 2系で作って大幅改修が嫌だから待ってるのだが遅すぎるわ
328 名前:nobodyさん mailto:sage [2009/10/30(金) 02:43:45 ID:???] >>327 洋書はどこから出るの?
329 名前:nobodyさん mailto:sage [2009/10/30(金) 07:45:24 ID:???] >>328 これのつもりだったが www.amazon.co.jp/Professionelle-Webentwicklung-mit-Ruby-Rails/dp/3826655400/ref=sr_1_10?ie=UTF8&s=english-books&qid=1256856141&sr=8-10 これはもうすぐ出るんだな www.amazon.co.jp/Beginning-Rails-Jeffrey-Allan-Hardy/dp/1430224339/ref=sr_1_1?ie=UTF8&s=english-books&qid=1256856141&sr=8-1 よく見たら上のはドイツ語だった・・・
330 名前:nobodyさん mailto:sage [2009/10/30(金) 08:21:29 ID:???] ぶっちゃけその3はRails3じゃなくて、本自身の第3版じゃないか?
331 名前:nobodyさん mailto:sage [2009/10/30(金) 08:22:43 ID:???] 失礼、英語の本のほうはRails 3か。
332 名前:nobodyさん mailto:sage [2009/10/30(金) 12:38:37 ID:???] ActeveRecordでupdate_atだけ更新する方法を教えてください
333 名前:nobodyさん mailto:sage [2009/10/30(金) 22:40:57 ID:???] >>332 railsのバージョンによって回答数が異なります。 バージョンは何?
334 名前:nobodyさん mailto:sage [2009/10/31(土) 06:45:29 ID:???] >>333 2.3.2です
335 名前:nobodyさん mailto:sage [2009/10/31(土) 10:44:38 ID:???] Railsのプロジェクトをチェックアウトして更新したのですが、追加したページにアクセス出来ません。 The page you were looking for doesn't exist. You may have mistyped the address or the page may have moved. というページが表示されます。Apacheを再起動してみましたが、表示されないままでした。 以前からあったページにはアクセスできますし、Mongrelを立ち上げてローカルからはアクセス出来ます。 production.logを確認してみましたが、何も書かれていませんでした。 環境はFedora10 + Apahe + passengerです。 どなたか解決方法を教えて頂けないでしょうか。 よろしくお願いします。
336 名前:nobodyさん mailto:sage [2009/10/31(土) 11:17:28 ID:???] >>335 そのエラーてどこのレベルでててるんだろ。 真ん中に赤枠があって、その中にエラー文字列があるなら、Railsがエラーはいているだろうけど apacheのログ確認してみた?
337 名前:nobodyさん mailto:sage [2009/10/31(土) 11:49:10 ID:???] "GET/financial_statenents HTTP/1.1" 404 ログの見方はよく分からないのですが、Railsで用意された404が表示されているみたいです。
338 名前:nobodyさん mailto:sage [2009/10/31(土) 12:10:24 ID:???] 追加したってのは、Rails.root 直下の public の下にHTMLファイルを 追加したってこと? Railsの機能を追加したってこと?
339 名前:nobodyさん mailto:sage [2009/10/31(土) 12:47:05 ID:???] 新しいコントローラのクラスと、それに対応するビュー、モデル、データベーステーブルを追加しました。
340 名前:nobodyさん mailto:sage [2009/10/31(土) 12:59:55 ID:???] とりあえず、apacheではなくRailsプログラムの問題のようなので、 developmentモードで動かしてみる →Passengerの設定にRailsEnvというのがある。 または、 productionモードのまま、ログレベルを:debugに変更 →config/environments/production.rbを弄る。 などでより詳しい情報を得ることを勧める。
341 名前:nobodyさん mailto:sage [2009/10/31(土) 13:34:57 ID:???] 何度も申し訳ないのですが、Passengerの設定ファイルってどこにあるのでしょうか?
342 名前:nobodyさん mailto:sage [2009/10/31(土) 14:46:41 ID:???] PassengerでRailsEnv指定できました。 Routing Error no route found to match "/financial_statements" with{:method=>:get} という表示に変わりました。routes.rbに何か設定を追加すればよいのでしょうか?
343 名前:nobodyさん mailto:sage [2009/10/31(土) 14:50:58 ID:???] いいかげんにしろ
344 名前:nobodyさん mailto:sage [2009/10/31(土) 15:00:09 ID:???] /financial_satementesというURLでRailsになんらかのアクションを してほしいなら、あなたが追加したコントローラとそいつのメソッド がそのURLにマッピングされなければならない。 rake routes してみるとおそらく /financial_statements に反応する ルールがないはず。 routes.rbに map.resources :financial_statements とでも書けばいいんじゃない?
345 名前:nobodyさん mailto:sage [2009/10/31(土) 15:39:28 ID:???] 回答有り難うございます。 map.resources :financial_statementes は上手くいきませんでした。 同じようなURL(/controllername)はマッピング出来ているのに/financial_statementsはエラーになる理由がよく分からないです。。
346 名前:nobodyさん mailto:sage [2009/10/31(土) 15:42:24 ID:???] まー、あとは routes.rb の問題ぽいからドキュメントみつつ rake routes しつつ、試行錯誤してくれい。
347 名前:nobodyさん mailto:sage [2009/10/31(土) 19:08:53 ID:???] おまたせしました 質問です RoRはWindows7で動作しますか?
348 名前:nobodyさん mailto:sage [2009/10/31(土) 20:26:19 ID:???] 動かないと思います
349 名前:nobodyさん mailto:sage [2009/11/05(木) 17:41:39 ID:???] Ruby on Rails解説書の定番"Agile Web Development with Rails"の 日本語最新版『RailsによるアジャイルWebアプリケーション開発 第3版』が、 この2009年11月末にオーム社より発行されます。 ついにでるー.
350 名前:nobodyさん mailto:sage [2009/11/05(木) 21:57:32 ID:???] >>350 d ssl.ohmsha.co.jp/cgi-bin/menu.cgi?&ISBN=978-4-274-06785-3
351 名前:nobodyさん mailto:sage [2009/11/05(木) 23:41:40 ID:???] Head first railsもRails2.3対応で同時期に出るらしいんだけど, どっちがいいかな
352 名前:nobodyさん mailto:sage [2009/11/06(金) 01:47:30 ID:???] 以下のようなプログラムを作成し、実行しています。 strSQL="select count(*) as cnt ,fk_table_id from datas where del_flg=0 group by id order by count(*)" hoge=Data.find_by_sql(strSQL) -------- <table> <%for i in (0..hoge.length-1) %> <tr><td><%=hoge[i].fk_table_id%></td><td><%=hoge.cnt%></td></tr> <%end %> </table> ----------------- ですが、ときどき undefined method `fk_table_id` というエラーがエラーログに出ています。 何か対処方法はないでしょうか? sqlは一例で、日によって発生場所がまちまちになっています。 環境 os centos ruby 1.8.7 p-174 rails 2.1.2 mysql tritonn-1.0.12-mysql-5.0.67 クエリキャッシュを有効にしていたのですが エラーの出現回数があまりに多いので 毎回クリアさせてみたところ多少減りました。
353 名前:nobodyさん mailto:sage [2009/11/06(金) 01:47:47 ID:???] そのタイミングでrails3が来たら全員涙目w
354 名前:nobodyさん mailto:sage [2009/11/06(金) 03:08:33 ID:???] 一度出たら2年くらい出ないから、3系を待ってくれた方がよかったかも 正直2.3系はあまり困ってない
355 名前:nobodyさん mailto:sage [2009/11/06(金) 17:55:44 ID:???] 質問させてください。 /lib/xxx.rbのモジュールをControllerでincludeして利用しています。 BackgrounDRb(/lib/workers/yyy_worker.rb)でも xxx.rbのモジュールをincludeして利用したいのですがどうすればいいでしょうか?
356 名前:nobodyさん [2009/11/07(土) 00:52:56 ID:ygEaPrn0] Rails勉強中なのですが、DBのリレーションのところでつまずいてます。 目的:下記条件下で、new.html.erbから名字と子供のnameを登録したい。 テーブル Parent id: myoji: Child id: parent_id: name: という二つのテーブルがあり それぞれのモデルには、 has_one :child belongs_to :parent を指定しています。
357 名前:nobodyさん [2009/11/07(土) 00:54:17 ID:ygEaPrn0] 上の続きです。 コントローラーには、 main.rb def new @user = Parent.new end def create @user = Parent.new(params[:data]) @user.save end Viewのnew.html.erbには <% form_for :parent,@user,:url=>{:action=>'create',:id=>@user} do |form|%> 名字:<%= form.text_field :myoji %> 名前:<%= form.text_field :name %> <%submit_tag '登録'%> <%end%> とします。 間違っているところを具体的ご指摘いただけないでしょうか。 rails rubyなどは最新バージョンです。
358 名前:nobodyさん [2009/11/07(土) 01:01:03 ID:ygEaPrn0] すみません。 @user = Parent.new(params[:data]) ではなく、 @user = Parent.new(params[:user]) だと思うのですが、、、まちがってますよね。。。
359 名前:nobodyさん mailto:sage [2009/11/07(土) 02:01:48 ID:???] >>355 も>>356 も、どう困ってるか書いてないのだが同じやつか?
360 名前:nobodyさん mailto:sage [2009/11/07(土) 02:36:17 ID:???] 自分でも何が分かってないのか分かってないんだろ。 なんかよく分からないけどヒントください、みたいな。
361 名前:nobodyさん [2009/11/07(土) 02:36:32 ID:ygEaPrn0] いえ、違う人です。 いろいろ変えてやってみたのですがいろいろなエラーで 収集がつかなくなったので、根本的に、基本的なところで どう間違っているのか、指摘してもらえればありがたいなーと 思いまして。。(^^;;
362 名前:nobodyさん mailto:sage [2009/11/07(土) 02:39:37 ID:???] そのコントローラーに対してどういうアクセスをしたのか、 その結果どういうエラーが出たのか、 具体的に示さないとあかの他人がアドバイス出来るはずないでしょ。
363 名前:nobodyさん mailto:sage [2009/11/07(土) 08:13:45 ID:???] 何もしてないならコントローラの名前がmain.rbって時点で変。
364 名前:nobodyさん mailto:sage [2009/11/07(土) 08:40:04 ID:???] ずーっと使っているとメモリの消費量がすごいことになるんだけど どうしたらいいの? いったん再起動するの?
365 名前:nobodyさん [2009/11/07(土) 09:14:59 ID:iBTE7BNg] 自分の場合、monitなどの監視ツールでメモリの使用量が一定量を超えたら自動で再起動させてる
366 名前:nobodyさん mailto:sage [2009/11/07(土) 09:15:41 ID:???] freeしても使用メモリはOSが実際に必要とするまで返還されなかったり するからとりあえずOSとかいろいろ教えれ。
367 名前:nobodyさん mailto:sage [2009/11/07(土) 09:22:59 ID:???] >>364 放っておくと死ぬから頻繁に再起動するしかないw
368 名前:nobodyさん [2009/11/07(土) 09:53:27 ID:iBTE7BNg] Passengerの場合は、5分間アクセスがなければプロセスを終了させるとか、1000回アクセスを処理したら終了などの設定ができるので、特にツールを使わなくても再起動できるのでおすすめ。
369 名前:nobodyさん mailto:sage [2009/11/07(土) 11:37:51 ID:???] rubyってガベコレしてないの?
370 名前:nobodyさん mailto:sage [2009/11/07(土) 12:03:22 ID:???] してるけど、Conservative GCなのでどうがんばっても回収漏れは発生する。
371 名前:nobodyさん mailto:sage [2009/11/07(土) 12:07:23 ID:???] >>366 ubuntu 8.04をxp上のvmware playerで動かしてる メモリの割り当ては512M monitなどで再起動か なるほろ
372 名前:nobodyさん mailto:sage [2009/11/07(土) 12:14:14 ID:???] GCはOSからもらっているメモリで再利用していいはずの 箇所を実際に再利用できるようにすることなので、 OSにメモリを返すという意味ではない。
373 名前:nobodyさん mailto:sage [2009/11/07(土) 14:27:25 ID:???] じゃあ再起動しなくていいはずなのに どうして再起動しないと固まるんだろうw
374 名前:nobodyさん mailto:sage [2009/11/07(土) 15:00:41 ID:???] GC以外のところに原因があるからという風に読めるな
375 名前:nobodyさん mailto:sage [2009/11/07(土) 16:06:55 ID:???] railsお勧めのレン鯖って存在しますか?
376 名前:nobodyさん mailto:sage [2009/11/07(土) 16:36:34 ID:???] メモリリークしまくるのはオブジェクト指向言語の伝統だし。
377 名前:nobodyさん mailto:sage [2009/11/07(土) 16:40:02 ID:???] ちょいと質問があります。 modelに書く処理をmoduleにまとめておきたいのですが、うまく行きません。 module内にnamedscopeの定義をまとめて書いたのですが、 undefined method `named_scope' for ModelSupport:Module などといわれてしまいます。 現在は例として以下のような感じで記述しています(名前は例なのでつっこまないで) item.rb(Itemモデル)に class Item < ActiveRecord::Base include ModelSupport end lib/model_support.rbに、 module ModelSupport named_scope :new_post, lambda{|num| {:limit => num}} end うまく、module化するにはどのように書いたものでしょうか?
378 名前:nobodyさん mailto:sage [2009/11/07(土) 16:42:07 ID:???] >>375 定評あるのはslicehostかな? 最近なら、Rackspaceとか
379 名前:nobodyさん mailto:sage [2009/11/07(土) 17:02:18 ID:???] >>375 ちょっと試したいだけなら heroku の無料プラン。 >>377 その書き方の場合、named_scope は module ModelSupport のスコープで実行される。 実行されるというのはメソッドが呼ばれるという意味ね。 例) module Hoge puts "hoge" end #=> hoge 単なるモジュールな ModelSupport は named_scope を知らないので undefined method になる。 で、どうすればいいかというとリフレクションを使う。 module ModelSupport def self.included(base) base.class_eval do named_scope :new_post, lambda{|num| {:limit => num}} end end end module が include されたときに included が呼ばれるので、 class_eval を使って base(=includeしたクラス)のコンテキストで name_scope を呼ぶ。
380 名前:377 mailto:sage [2009/11/07(土) 17:12:43 ID:???] >>379 うほっ!できました、できました! 他のRailsプラグインとかもそういうような書き方しててナンダコレ?とか思ってました。 スコープ考慮しないといけないんですね。 これ、慣用句的な書き方みたいですね。 今までmoduleの中身はincludeした方のスコープで動くもんだと思ってたw そういうことだったのか
381 名前:nobodyさん mailto:sage [2009/11/07(土) 19:06:05 ID:???] >>373 >>じゃあ再起動しなくていいはず 逆。OSには返してないわけだから、基本的にOSから見た プロセスが食うメモリってのは増える一方。
382 名前:nobodyさん mailto:sage [2009/11/07(土) 19:46:08 ID:???] freeしてもOSにメモリを返却するってわけじゃないんだよな。 プロセスのメモリサイズをいじるのはsbrkとかbrkだっけ?
383 名前:nobodyさん mailto:sage [2009/11/07(土) 20:08:11 ID:???] >>379 自分には関係ないけど なるほどーと思った
384 名前:nobodyさん mailto:sage [2009/11/07(土) 21:19:04 ID:???] >>379 宣言的に見えるけど、実のところnamed_scopeもただの メソッドだからな。
385 名前:nobodyさん mailto:sage [2009/11/08(日) 02:45:09 ID:???] qmailで受信して、.qmailのパイプ経由で script/runnerしてメール処理をしてるのだが、 一度受信したメールが何度も繰り返し送られてくる。 これって、こういうものなのかな? それとも的確な処理をしてないから?
386 名前:nobodyさん mailto:sage [2009/11/08(日) 02:58:14 ID:???] 受信したら消せよ
387 名前:nobodyさん mailto:sage [2009/11/08(日) 03:13:16 ID:???] うそん
388 名前:nobodyさん mailto:sage [2009/11/08(日) 03:16:34 ID:???] 外部から何度も送られてくるのよ。 受信したメールをコマンドで処理するのみで 保存しないようにしても症状は同じ。 受信したときに相手のサーバに的確なメッセージを 返してあげないとダメなのかな? そういうのはqmailが勝手にやってくれてると思うのだけど…
389 名前:nobodyさん mailto:sage [2009/11/08(日) 10:25:46 ID:???] >>388 > そういうのはqmailが勝手にやってくれてると思うのだけど… おいおい
390 名前:nobodyさん mailto:sage [2009/11/08(日) 11:28:57 ID:???] これがruby厨
391 名前:nobodyさん mailto:sage [2009/11/08(日) 14:55:17 ID:???] そんなくれくれruby厨に助言してくれよう。 終了コード0返すだけじゃだめなの?
392 名前:nobodyさん mailto:sage [2009/11/08(日) 16:35:04 ID:???] ActiveRecord::Migration.execute('CREATE TABLE hoge (・・・); CREATE INDEX ・・・;') とかしてもインデックス作られないんだけどCREATE TABLEだけしか実行してくれないの?
393 名前:nobodyさん mailto:sage [2009/11/08(日) 18:22:12 ID:???] そんな事はない。 インデックスも正しく作成される。 その前にマイグレーションを使っているのに、わざわざSQLを直接実行するのはなんでだ?
394 名前:nobodyさん mailto:sage [2009/11/09(月) 20:11:21 ID:???] Railsではidを渡すところに大概は、Hoge.find(id) した後のオブジェクトを渡しても 自動でidに変換してよしなに計らってくれますよね? 例えば、Hoge.find自身もintegerなidじゃない Hoge.firstの返り値などでも通ります。 これを自分の処理でも使いたいのですが、該当するメソッドはないものでしょうか? ActiveRecordのfindのソースとかたどって見ているのですが、 いまいちわからんとです・・・ 環境はRuby 1.8.7、Rails 2.3.4です。
395 名前:nobodyさん mailto:sage [2009/11/09(月) 21:43:53 ID:???] >>394 まずは active_record/base.rb の AR::Base#find から find_one / find_some などを経て def quote_value(value, column = nil) self.class.connection.quote(value, column) end これは、active_record/connection_adapters/abstract/quoting.rb の def quote(value, column = nil) # records are quoted as their primary key return value.quoted_id if value.respond_to?(:quoted_id) : かな。 で、AR::Base に戻って def quoted_id #:nodoc: quote_value(id, column_for_attribute(self.class.primary_key)) end
396 名前:nobodyさん mailto:sage [2009/11/09(月) 21:58:57 ID:???] んなもんソース見るまでもなくね?
397 名前:nobodyさん mailto:sage [2009/11/09(月) 23:09:34 ID:???] 見ないでどうやってしらべんの
398 名前:nobodyさん mailto:sage [2009/11/10(火) 04:32:44 ID:???] んなもん調べるまでもなくね
399 名前:nobodyさん mailto:sage [2009/11/10(火) 12:23:52 ID:???] 初心者スレか本スレに帰れ
400 名前:nobodyさん mailto:sage [2009/11/10(火) 15:45:57 ID:???] >>395 無事動作を確認できました! Item.quote_value(1234) => "1234" Item..quote_value(Item.first) => "1" みたいにいけますた。何故か文字列ですがw find_oneやfind_someになんであるのに、見つけられなかったんだろ、と ドキュメントを思ってよく見たら railsのchmファイルって、メソッドのソース表示は長い行だと折り返されないで、 画面外にでてって表示されないっぽいですね orz 他の場面でもソース見ててハマりそうだ・・・。 この辺てCSSとか直したらなんとかなるんかな。
401 名前:nobodyさん mailto:sage [2009/11/10(火) 16:15:53 ID:???] 「SQL文の条件句に埋め込む数値の表現」なので、 最終的に文字列が得られるようになってるのよ。
402 名前:nobodyさん mailto:sage [2009/11/10(火) 16:23:20 ID:???] >>401 ああ、確かにドキュメントに > Quote strings appropriately for SQL statements と書いてありますね。 quote_〜〜ってメソッドたくさんあるし、なんのことかと思ったら、 SQLのためのクォート処理なんですね。 勉強になりました。 privateメソッドですし、期待する機能と名前が一致しない点もアレなのですが、 とりあえずは実現できるので ActiveRecord::Base::quote_value を使ってみます。 帰り値の文字列はto_iすればいいですし。 ありがとうございました。
403 名前:nobodyさん mailto:sage [2009/11/10(火) 20:20:41 ID:???] 質問よいですか? URLに&hoge=true といったように、フラグや状態(日付とかでもいいです)を記載して、 しばらく、一定のページ遷移まで、&hoge=trueのGETパラメータを付加しつづけるよい方法はありませんでしょうか? クッキーがいいかと思ったのですが、状態の違うページをいくつか開いた際に破綻してしまいます。 今は、form_forなどの引数にパラーメータを一個一個渡しています。 手動なのでけっこうミスがでてしまいます。 以下のような感じです。 view側: <% form_tag({:action => :edit, :id => @item}.merge(hoge_params_hash)) do %> : <% end %> コントローラー側: helper_method hoge_params_hash private def hoge_params_hash params[:hoge] ? {:hoge=> params[:hoge]} : {} end 例として、ブログやCMSのプレビュー用のモードというか、プレビューボタンを押した後指定のページ遷移までは フラグ立てたまま処理する(「プレビュー中です」のような表示をしたい)というような場合や 食べた食品を記録するサイトで、ある日に記録するデータを検索窓から検索した場合、 その検索後のページ場合もそのある日を覚えておいて、記録時に使いたいといった場合です。 設計の問題なのかもしれませんが、ぜひご助言ください。
404 名前:nobodyさん mailto:sage [2009/11/10(火) 22:01:55 ID:???] formならhiddenでいいんじゃね?
405 名前:nobodyさん mailto:sage [2009/11/10(火) 22:09:57 ID:???] セッションに保存するのが駄目な理由が分からん。 application_controllerにチェックするメソッド定義して、各コントローラでfilterで呼ぶとか。 filterを工夫すればいいんじゃないの?
406 名前:nobodyさん mailto:sage [2009/11/10(火) 22:11:23 ID:???] >>403 例えば、link_toの場合は、こんな感じで書くとGETパラメータを付加してくれる。 formでも同じ事ができるかは分からないが。 <%= link_to("編集", :action => :edit, :id => @item, :params => params) %>
407 名前:403 mailto:sage [2009/11/11(水) 09:59:21 ID:???] >>405 そういうことが聞きたいのです。 セッションだと、 >>403 の下のブログやCMSの例でいえば、プレビューと実際の画面表示のコードを共有していた場合、 プレビュー中に、実際の画面みようとしてもプレビュー表示になってしまいますよね。 食品の記録サイトでいえば、別のタブで同時に別の日を入力しようとしていた場合、 セッションにある値しかつかわれないので、セッションにある日しか同時に入力できないことになります つまり、セッションだと状態を1つしかもてない、という意味なのですが・・・ ま、仕様です、と言えば、それでもいいのかもしれませんがw >>406 あ、いえ、今もそんな感じでやってるんです。 >>403 のコード例がわかりにくいのですが、 form_tag でGETパラメータを指定しています。 ただし、指定するかは今のページのGETパラーメータを見てから。 >>404 確かにformならhiddenでもいいですね。GETパラメータでやらなくてもいいか
408 名前:nobodyさん [2009/11/12(木) 03:49:23 ID:K53v7ACD] ファイルをアップロードするときってform_tagとかfile_fieldを つかってファイルを選ぶ方法しかないのでしょうか? クライアントがパスを書いてそこにあるファイルをサーバに保存する ことは不可能ですか?
409 名前:nobodyさん mailto:sage [2009/11/12(木) 04:51:31 ID:???] 可能
410 名前:nobodyさん mailto:sage [2009/11/12(木) 15:35:06 ID:???] /etc/passwdとか上書き出来たら楽しいね。
411 名前:nobodyさん mailto:sage [2009/11/12(木) 15:36:59 ID:???] 当たり前のような質問があります。 HogeControllerがあり、publicなメソッドとしてFoobarを新たに追加しました。 デフォルトのルーティングだと、 /hoge/foobar でアクセスできるのですが、プログラム上からは foobar_hoge_path() が使えません。 rake routesしても載ってないのですが、 これって、routes.rbに map.resources :hoge, :member => { :foobar => :get } などとかかなくてはいけないものなのでしょうか?
412 名前:nobodyさん mailto:sage [2009/11/12(木) 22:47:21 ID:???] find_by_sqlで複数のSQLを実行したとき 返ってきた結果セットがほぼ同時に別プロセスで 実行していた別なSQLのものに変わってしまっています。 mysqlの設定などでチェックすべきところとかないでしょうか?
413 名前:nobodyさん mailto:sage [2009/11/12(木) 23:21:24 ID:???] >>411 無指定の map.resources だけだとそこまで面倒みてくれない。 map.resources に追加するか、昔ながらのやり方で map.foobar_hoge 'hoge/foobar', :controller => 'hoge', :action => 'foobar' のように定義してやるとか。
414 名前:nobodyさん mailto:sage [2009/11/12(木) 23:37:15 ID:???] トランザクションとかストアドプロシージャだろうか やったことないけど
415 名前:411 mailto:sage [2009/11/14(土) 04:27:35 ID:???] >>413 ありがとうございます。 こちらでも試してみましたが、やはり、必要なのですね。 >>411 のは間違ってまして、/hoge/foobarの場合は、 map.resources :hoge, :collection => { :foobar => :get } でした。 /hoge/1/foobarなら、>>411 のでいいみたいです。
416 名前:nobodyさん mailto:sage [2009/11/17(火) 14:03:16 ID:???] ちょっと聞いていいでしょうか? psousa's baseapp-orange at master - GitHub github.com/psousa/baseapp-orange 以前でてたBaseAppというRailsのテンプレみたいなのの派生verがあるのを発見して 動かしてみようと思ったんですが、うまく行きません。 READMEにあるように、mysql用のdb設定をdatabase.ymlにして、 rake db:migrate したのですが、 Missing these required gems: capistrano-ext と言われてしまいます。 vendor以下を見るとfreezeされているのか、必要なgemなど全部入っているようなのですが、このように言われます。 config/enviroment.rb には、 config.gem "capistrano-ext", :lib => "capistrano" のような記述があり、 rake gems:install とするのですが、何ごともなく終了します。 どうしたものでしょうか?
417 名前:416 mailto:sage [2009/11/17(火) 14:16:18 ID:???] >>416 ですが、 ないならgemいれればいいんじゃね?という当たり前の結論で、 gem install capistrano-ext したら、無事に通りました。(db:migrateでDBないと言われたので、rake db:createしましたら行けました) しかし、何でこんな動作になっているのだろう? なるべくシステムに入っているgemを使いたいのですが、満載のvendor/gems以下や、vendor/rails以下は 手動で削除しちゃっていいものなのでしょうか?
418 名前:nobodyさん mailto:sage [2009/11/17(火) 16:12:30 ID:???] rails 2対応の初心者用参考書でお勧めはどれですか?
419 名前:nobodyさん mailto:sage [2009/11/17(火) 16:13:42 ID:???] 既存のapache管理下のものに影響与えないように導入することはできないのでしょうか
420 名前:nobodyさん mailto:sage [2009/11/17(火) 18:37:57 ID:???] >>418 >>350 がいいんじゃないかと思う
421 名前:nobodyさん mailto:sage [2009/11/17(火) 22:36:49 ID:???] >>419 影響ってどういう意味?
422 名前:nobodyさん mailto:sage [2009/11/18(水) 02:13:20 ID:???] restful_authenticationを使ってログイン認証を行おうと思ってるんですが、 画面の遷移がない場合5分経ったらセッションを消してログアウト状態にしたいと思っています。 以前はacts_as_authenticatedを使って、ログインされたらデータベースのsessionテーブルにユーザーの session情報を保存しておいて、ユーザーが画面遷移をしたら、そのsession情報を更新しておき 5分おきにsessionテーブルを監視して、更新時間が5分以上経ってたらsessionテーブルから削除するようにして ログアウト状態を再現していました。 restful_authenticationを使う場合は、データベースに値を持たなくても上記のような事ができるのでしょうか? すみませんが、お知恵をお貸しください。宜しくお願いします。
423 名前:nobodyさん [2009/11/18(水) 17:36:25 ID:8qlvL/3i] 都道府県のデータをRubyの配列で用意しようと思うんだけど、 どこのファイルにおくのがおすすめでしょうか。 JP_STATES = [ '北海道', '青森’, ... ] こんな感じのデータです。
424 名前:nobodyさん mailto:sage [2009/11/18(水) 18:51:10 ID:???] Railsアプリのルートディレクトリを表す変数とかありませんか?
425 名前:nobodyさん mailto:sage [2009/11/18(水) 22:12:48 ID:???] >>422 restful_authentication自身にはそういった機能はなかったはず。 データベース側をきっちり削除したいなら自前で実装するのがいいだろうね。 クッキーのexpireでいいなら、2.3以降ならActionController::Base.sessionの:expire_afterを指定、 それ以前ならdynamic_session_expプラグインを使えばいい。 >>423 2.0以降なら config/initializers以下に。 それ以前ならconfig/environment.rbやconfig/environment/*.rbに直書きするか config/以下にファイルを置いてenvironment.rbなどからrequire。 >>424 RAILS_ROOT
426 名前:nobodyさん mailto:sage [2009/11/18(水) 22:14:23 ID:???] いまは Rails.root でもOK
427 名前:nobodyさん mailto:sage [2009/11/19(木) 00:14:02 ID:???] Wikiみたいなアプリで、文字列をHTMLに変換する処理をParserとしてモデルに切り分けたいのですが url_forとかhoge_urlとかはモデルから使えないので、リンク生成をどうしたものかと思っています。 config/routes.rbの設定と重複しないために、できればURL生成メソッドで作りたいのですが どうにかできないでしょうか?
428 名前:nobodyさん mailto:sage [2009/11/19(木) 15:24:41 ID:???] >>427 モデルじゃなくて(モデルでもいいけど)、 ふつうのライブラリみたいに lib/以下にParserとしておいて、 コンストラクタでコントローラーのインスタンスを渡す、とかどうだろか lib/以下に置く時の注意は、moduleにしてRailsが想定する名前の付けか足しておくと、 requireとかしなくても、自動で読んでくれる。はず。 詳しい方きぼん
429 名前:nobodyさん mailto:sage [2009/11/19(木) 15:32:45 ID:???] ついでに質問なのですが、FormBuilderやFormHelperを継承せずに拡張したいのですが、うまいやり方ないでしょうか? 今は、 lib/hoge_form_helper.rb として、 module HogeFormHelper module FormBuilder def my_text_area(method, options = {}) : end end end 上記のように書いて、application_helper.rbにて、 class ActionView::Helpers::FormBuilder include HogeFormHelper::FormBuilder end のようにして、組み込んでいます。 FormBuilderを書いたら、FormHelperも追加したくなるのが人情というものですが、その場合、 HogeFormHelper::FormHelper を書いて、application_helper.rbに、 class ActionView::Helpers::FormBuilder include HogeFormHelper::FormBuilder include HogeFormHelper::FormHelper end のようにさらにするのが不恰好に見えます。 これらの処理をlib/hoge_form_helper.rb側におけないものでしょうか?
430 名前:nobodyさん mailto:sage [2009/11/19(木) 20:01:14 ID:???] rspecでhave_textとかinclude_textが動かなくて困っています。 現象: get "some_action_name" response.should include_text("foo") とすると expected "foo", got "1" と表示され、失敗します。 response.should render_template(...) は成功しています。 調べたこと: 自分で調べたところ、p response.body をすると "1" が出力されました。 これはテンプレートがレンダリングされてないのだと思い、テンプレートの中で $stderr.puts "**** rendered *****" みたいに入れると、出力されませんでした。 推測: どうもgetを呼び出しただけだとテンプレートがレンダリングされない? rspecのチュートリアルだと ttp://rspec.info/rails/writing/controllers.html get 'some_action' response.should have_text("expected text") とあるので、getだけでいいと思うんですけど、ほかに何か必要でしょうか。
431 名前:nobodyさん mailto:sage [2009/11/19(木) 21:37:22 ID:???] >>429 プラグイン化するとか。 結局はincludeするんだけど、vendor/plugins に丸ごと置くだけでよくはなる。
432 名前:nobodyさん mailto:sage [2009/11/20(金) 16:48:45 ID:???] Railsで、text2html みたいなヘルパーってありませんでしたっけ? 「rails text2html」でぐぐっても、それらしいのは見つからず。
433 名前:nobodyさん mailto:sage [2009/11/20(金) 17:56:43 ID:???] RoRをWindows上で稼動させていてアップローダーを作ったところ 日本語のファイルがUTF-8で生成されてWindows上で文字化けします ファイルを保存するときにSJISに変換しないといけないのでしょうか? NTFS自体はUNICODE対応のはずだし なにかが間違ってるような気がするんです
434 名前:nobodyさん mailto:sage [2009/11/20(金) 18:02:42 ID:???] >432 textile とか markdown のこと? >433 お前が間違ってる
435 名前:nobodyさん mailto:sage [2009/11/20(金) 18:55:59 ID:???] form_remote_tagとselect_tagを使ってAjaxで選択リストの値を送りたいのですが、値を受け取るにはコントローラでどのようなコードを書けばよいのでしょうか?
436 名前:nobodyさん mailto:sage [2009/11/20(金) 19:17:38 ID:???] >>433 UTF-8で保存するのでもなければSJISで保存するのでもない UNICODEで保存するんだぞ
437 名前:nobodyさん mailto:sage [2009/11/22(日) 03:24:06 ID:???] parentテーブルとchildテーブルがあるとして、 parentモデルにhas_many :childを指定してchlidテーブルに belogns_to :parentと指定します。 この状態の時に「parent.child.replace = @child」でchildに値をセットして parent.saveとすると新規登録はされるんですが、更新が上手く行きません。 何か書き方がいけないのでしょうか?それとも仕様でしょうか? ruby 1.8.6でrailsは2.2.2です。 よろしくおねがいします。
438 名前:nobodyさん [2009/11/22(日) 04:51:41 ID:Z6X1KQFW] >>436 UNICODEで保存? UTF-8/16じゃなく?
439 名前:nobodyさん mailto:sage [2009/11/22(日) 06:54:00 ID:???] write open するときに OpenFileA()じゃなくて OpenFileW()使えっていう意味では
440 名前:nobodyさん mailto:sage [2009/11/23(月) 20:58:50 ID:???] RailsでjQuery使うにはどうするのがよいんでしょうか? jRailsというのがあったみたいですが、公式サイトなくなってるし・・・ jRails - jQuery on Rails ennerchi.com/projects/jrails
441 名前:nobodyさん mailto:sage [2009/11/23(月) 21:27:37 ID:???] ふつうに <script src=></script> でいいんじゃないの?
442 名前:nobodyさん mailto:sage [2009/11/24(火) 00:15:15 ID:???] 当方Windowsで開発をしています ruby script/serverを実行した際に C:\rails\hello>ruby script/server => Booting Mongrel => Rails 2.3.4 application starting on 0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server でコマンドプロンプトが次のWEBRICKが起動した〜などを出力してくれません Ctrl-Cをしてもサーバーは停止できません 一度だけこの状態で長時間放置したときに 500 Internal Server Error unknown error という表示がされました 解決方法がさっぱりわかりません どなたか解決方法知っている方がいれば教えていただけるとありがたいです
443 名前:nobodyさん mailto:sage [2009/11/24(火) 00:38:56 ID:???] こっち最新なんだろうか github.com/aaronchi/jrails
444 名前:nobodyさん [2009/11/24(火) 03:53:25 ID:igGLII2V] >>442 まるち
445 名前:nobodyさん mailto:sage [2009/11/24(火) 07:33:31 ID:???] >>442 誘導されておきながらそれを書かないからマルチ扱いされる あと誘導前のスレにも移動する事くらい書いた方がいい ちなみにMongrelの事は知らないので質問には答えられない
446 名前:nobodyさん mailto:sage [2009/11/24(火) 09:45:43 ID:???] >442 もっと詳しく。 エスパーは希少なのでそれだけの情報では足りない。 何が足りないのかは考えろ。
447 名前:nobodyさん mailto:sage [2009/11/25(水) 01:38:14 ID:???] 知らんがな。 自分で調べる能力無いなら、サポートしてくれる業者を捜すなり、商用ソフトでも使ってサポート受けたら? pc11.2ch.net/test/read.cgi/php/1258187482/ 【PHP】下らねぇ質問はID出して書き込みやがれ 90 pc11.2ch.net/test/read.cgi/php/1251803164/ 【質問】ASP.NETスレ Part6【雑談】 pc11.2ch.net/test/read.cgi/php/1222645553/ 【 スクリプト改造依頼スレ】(丸投げ) part7再々 pc11.2ch.net/test/read.cgi/php/1257701535/ △▲ WebProg 初心者の質問 Part21 ▼▽ pc11.2ch.net/test/read.cgi/php/1158647441/ くだらない質問でもど偉そうに聞いていいスレ
448 名前:nobodyさん mailto:sage [2009/11/25(水) 16:20:37 ID:???] >>442 何をしたいのか、何を聞きたいのか、意味がわからん。 mongrelをgemで入れている環境なら、script/serverはwebrickではなく自動でmongrelが起動するよ。 webrickを明示的に起動したかったら、 script/server webrick とかするんじゃなかったかな?調べてみて。 Ctrl-Cは何回かおしたら止まる気はする
449 名前:nobodyさん mailto:sage [2009/11/25(水) 16:25:33 ID:???] 質問をお聞きします。 viewやヘルパーを書く時に、javascriptのパスを渡したいのですが、 javascrip_path "hoge" などと書くと、 /javascript/hoge.js というのが得られるのですが、viewでjavascript_include_tagメソッドで得られるように、 /javascript/hoge.js?1259048403 のようなキャッシュしないパスを簡単に得るメソッドはないものでしょうか? ソースも見ているんですが、どこで付加されているのかイマイチわからんです・・・
450 名前:449 mailto:sage [2009/11/25(水) 16:51:10 ID:???] 実際はlib/以下に配置したモジュール内から、以下のようにして記述しているのですが、 ApplicationController.helpers.javascript_path "hoge" hoge.js?1235343 のようになってくれません。 Rails consoleで上記を試すとちゃんとついてくれるのですが・・・
451 名前:nobodyさん mailto:sage [2009/11/25(水) 17:02:11 ID:???] わからないけど、これは関係あるだろうか cache_asset_timestamps
452 名前:449 mailto:sage [2009/11/25(水) 17:24:16 ID:???] >>451 ありがとうございます。 ソースも見ていたのですが、該当箇所はわかりました。 javascript_path→compute_public_pathときて、rewrite_asset_path内で?のあとにタイムスタンプを付加しているようでした。 で実はできねーよヽ(`Д´)ノ ウワァァン!!と思って四苦八苦していたのですが、 別のビューの似たようなページのソースをずっと見ていました orz 正しいページを見たら、ちゃんと /javascript/hoge.js?1259048403 というようになっていました。 解決しました。 おかげさまでありがとうございました。スレよごしスマソ
453 名前:nobodyさん [2009/11/26(木) 11:02:42 ID:S4TWLvc3] Ruby 1.9 And Rails 3.0 www.slideshare.net/arrrrcamp/ruby-19-and-rails-30
454 名前:nobodyさん mailto:sage [2009/11/26(木) 17:33:35 ID:???] ぬるぽ
455 名前:nobodyさん mailto:sage [2009/11/26(木) 17:50:14 ID:???] Rails 2.3 = Rails 3.0 ってあるけど、そうなの?
456 名前:nobodyさん [2009/11/26(木) 19:34:03 ID:S4TWLvc3] First look at rails 3.0.pre drnicwilliams.com/2009/11/03/first-look-at-rails-3-0-pre/ woodie-rails.appspot.com/ rails 3.0 pre github.com/rails/rails/commit/db3de78a83379ab2a58e0d29fb10622b813a4d44 woodie-rails.appspot.com/
457 名前:nobodyさん mailto:sage [2009/11/27(金) 00:40:04 ID:???] ossでソースきれいで参考になるプロダクトってある?
458 名前:nobodyさん [2009/11/27(金) 16:27:52 ID:uE3HMbl5] rails version 2.3.5 just released.
459 名前:nobodyさん mailto:sage [2009/11/27(金) 17:51:25 ID:???] やっとこさrails2系に慣れてきたのにrails3とかワロス
460 名前:nobodyさん mailto:sage [2009/11/27(金) 18:43:36 ID:???] config/locales/ja.ymlを作って ja: Hello: こんにちは と書いた。あとconfig/environment.rbに config.i18n.default_locale = :ja を追加した。それでも ruby script/console を実行して irb> I18n.t('Hello') => "translation missing: ja, Hello" となる。 何が足りない?誰か助けて。
461 名前:nobodyさん mailto:sage [2009/11/27(金) 18:59:16 ID:???] >>460 サンプルの config/locales/en.yml にあるキーは小文字の hello なんだが、 YMLに小文字で書いて呼び出しで大文字のHelloを使っているのではあるまいか?
462 名前:nobodyさん mailto:sage [2009/11/28(土) 00:57:41 ID:???] >>460 config/locales/ja.ymlは、このようになっていないと動かない。 この状態で、I18n.t("hello")で翻訳される事を確認した。 ----------------------- ja: hello: こんにちは ----------------------- 単に、hello: の行だけでは動かなかった。 たぶん、そのあたりじゃない?
463 名前:462 mailto:sage [2009/11/28(土) 01:06:47 ID:???] あ、ごめん。 よく見てみたら、>>460 もちゃんと書いてたね。 ちなみに ja: hello: こんにちは(hello) Hello: こんにちは(Hello) って書いたら、こうなったので全部小文字で書かないといけない という事はなさそう。 >> I18n.t("hello") => "こんにちは(hello)" >> I18n.t("Hello") => "こんにちは(Hello)" 確認したrailsのバージョンは2.3.4。
464 名前:nobodyさん mailto:sage [2009/11/28(土) 01:21:36 ID:???] >>463 全部小文字で書かないといけないというわけではなく、 ファイルでしたキーとコードから参照したキーが違ってるんじゃないかという 指摘だと思う。 ただのYAMLで定義したHashだし。
465 名前:nobodyさん [2009/11/28(土) 17:18:18 ID:gofPBBCV] 10,000,000 todos twitter.com/dhh/status/6021870055
466 名前:nobodyさん mailto:sage [2009/11/30(月) 00:11:03 ID:???] >>198 > 教祖がデビアンで開発してるから、 そのわりにパッケージが古いんだよな。 railsはgemで入れるとしてrubyがいつもチョット古いのが面倒だ。
467 名前:nobodyさん mailto:sage [2009/11/30(月) 03:07:01 ID:???] >>466 sidも古いの?
468 名前:nobodyさん mailto:sage [2009/11/30(月) 15:32:02 ID:???] <%=h foo.bar.name.blank? ? '-' : foo.bar.name %> というのが頻繁にでてくるので、ヘルパーメソッドを定義したい。 def default_val(val, default='-') val.blank? ? default : val end ・質問1: すでにこのようなメソッドはありますか? ・質問2: いいメソッド名があれば教えてください。
469 名前:nobodyさん mailto:sage [2009/11/30(月) 16:49:47 ID:???] 1: ないと思う 2: value_or_default(foo.bar.name) とかどうだろ
470 名前:nobodyさん mailto:sage [2009/11/30(月) 18:24:46 ID:???] >>469 さんくす。 できればもうちっと短い名前がいいんだが。いいのがないものか。
471 名前:nobodyさん mailto:sage [2009/11/30(月) 19:20:53 ID:???] #blank? になるものが常に偽とみなせるなら foo.bar.name || '-' でいいんだけどねー。 "" とか [] は #blank? になるけど真だからなあ。
472 名前:nobodyさん mailto:sage [2009/11/30(月) 20:45:02 ID:???] blank?で判断する || 演算子が欲しくなるな。
473 名前:nobodyさん mailto:sage [2009/11/30(月) 21:33:41 ID:???] StringとNilClassにorってメソッドを・・・
474 名前:nobodyさん mailto:sage [2009/12/01(火) 11:59:14 ID:???] Rails初心者です。 fixturesは使わずに手軽にテストデータを入れようと、 勝手データテキストファイルと勝手スクリプトを書いて、 /db/migrateに両方起きつつ、NetBeans上からファイルを実行してみたのですが ファイル読み込みの時点でNo such file or directoryとなってしまいます。 そこで質問ですが、 ●このデータにアクセスさせるためにはどう書くべきですか? ●データ投入はfixturesを必ず使うべきですか? よろしくお願いします。
475 名前:nobodyさん mailto:sage [2009/12/01(火) 19:09:38 ID:???] >474 知るか
476 名前:nobodyさん mailto:sage [2009/12/02(水) 11:16:20 ID:???] >>474 ・Rails環境を利用した勝手スクリプトはscript/runner経由で使う 他なにかあったけ。
477 名前:nobodyさん mailto:sage [2009/12/02(水) 11:18:43 ID:???] >>474 あと必ずしもfixtureということもないと思う。 Rails 2.3.4では初期データの投入はseeds.rbを使うことが推奨されるみたいだよ Rails アプリの初期データを設定する機能 - takihiroの日記 d.hatena.ne.jp/takihiro/20090906/1253523597
478 名前:nobodyさん mailto:sage [2009/12/02(水) 11:21:25 ID:???] >>474 >>477 似追記してコレも Rails 2.3.4で追加されたseeds.rbについて - ひげろぐ brass.to/blog/rails-2-3-4%E3%81%A7%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%9Fseeds-rb%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6.html
479 名前:nobodyさん mailto:sage [2009/12/02(水) 11:38:12 ID:???] Rails 2.3.5来てるな。 セキュリティfixあるからいれろ Riding Rails: Ruby on Rails 2.3.5 Released weblog.rubyonrails.org/2009/11/30/ruby-on-rails-2-3-5-released hなくてもエスケープするRailsXssプラグインが便利そうだ。生中出しするときはrawつける
480 名前:nobodyさん mailto:sage [2009/12/02(水) 14:31:45 ID:???] フォームを入力してSubmitボタン→「ありがとうございました」ページ というのをつくったのですが、ありがとうございましたページでブラウザの戻るボタンを押し、 再度Submitボタンを押すと、同じデータが送信されてしまいます。 これは二重サブミットと呼ばれているそうですけど、これを防ぐにはどうするのがいいんでしょうか。 よさげなプラグインとかありましたら教えてください。
481 名前:nobodyさん mailto:sage [2009/12/02(水) 18:39:32 ID:???] RailsによるアジャイルWebアプリケーション開発第3版 買ったぞ。改訂版だから当然だけどパっと見で2版とほとんど内容変わらず… 2版で見慣れたスクリーンショットやコラムがそのまま載ってる。 これからじっくり読んでみよう
482 名前:nobodyさん mailto:sage [2009/12/03(木) 00:03:06 ID:???] >>480 rails トランザクショントークンでググれ
483 名前:nobodyさん mailto:sage [2009/12/03(木) 05:28:57 ID:???] >>480 >>482 これで簡単にいけそうだな Railsでトランザクショントークン(ダブルサブミット、2重登録対策)を使う - diaの備忘録 d.hatena.ne.jp/DianthuDia/20080911/1221140796
484 名前:nobodyさん mailto:sage [2009/12/03(木) 09:20:01 ID:???] ちょっと質問があります。 Rails 2 ではDBに保存する日時はdatetimeはUTCになっててますよね。 日のデーダだけDBに保存したい、扱いタ場合どうするのがよいのでしょうか? 何時(datetime)、ではなく何日(date)ということです。 UTCの日時から何日かデータを取り出した場合、時間の情報がなくなって、 時差情報が欠落してしまいます。 たとえば、日本時間だとUTC+9ですが、 UTCで2009-12-01 23:00のdatetimeから、 日付をDBに保存しておきたい場合、日本時間に変換し(2009-12-02 8:00)、日付にし(2009-12-02)DBに保存する? こういう場合はどうするのがセオリーなんでしょうか? そもそも、date使わずdatetimeのまま(UTCまま)DBとかに入れてしまう?でも変だな?? 想定としては、date:datetimeと count: integerで日付と数値を次々と入力していったものを 日付別のデータにして保存したい(例えばデイリーの累積グラフにしたり)という場合の話です。
485 名前:484 mailto:sage [2009/12/03(木) 09:23:29 ID:???] 想定がわかりづらくてすいません。 UTC 2009-12-01 12:00, 100 UTC 2009-12-01 23:00, 100 UTC 2009-12-02 1:00, 100 というデータがあって、 2009-12-01, 200 2009-12-02, 300 という累積したデータを保存しておくというのを想定しています。
486 名前:nobodyさん mailto:sage [2009/12/03(木) 11:36:12 ID:???] 色々と酷くて答えようがない
487 名前:nobodyさん mailto:sage [2009/12/03(木) 12:44:15 ID:???] >>485 この場合、UTCで集計してるんだから、 日付もUTCにせざるを得ないんじゃないの。
488 名前:nobodyさん mailto:sage [2009/12/03(木) 15:51:32 ID:???] そもそもローカルタイムで格納するつもりはないの? config.active_record.default_timezone
489 名前:nobodyさん mailto:sage [2009/12/04(金) 00:25:22 ID:???] ローカルはあとで困ると思うよ。utcを変換して使っておいたほうがいい。
490 名前:nobodyさん mailto:sage [2009/12/04(金) 01:35:49 ID:???] >>485 UTCで保存する必要がないなら、config/environment.rbにある config.time_zone = 'UTC' この行をコメントアウトするか、削除すればローカルタイムで保存される。 >>489 UTCで保存して得した事なんて一度もないんだが、 どういうケースで役に立つの? また、どういう場合に困るの?
491 名前:nobodyさん mailto:sage [2009/12/04(金) 08:40:19 ID:???] >>490 国際的なアプリでユーザーの指定したタイムゾーンに合わせて 時間を表示するような場合は、ローカルタイム基準だと 話がややこしい。 どこからでも使われる可能性があるなら場所には依存しないほうが楽。
492 名前:nobodyさん mailto:sage [2009/12/04(金) 11:43:43 ID:???] >>490 自分(or特定の相手=日本人)しか使わないならそれでいい 不特定多数相手なら考えを改めた方が良い
493 名前:nobodyさん mailto:sage [2009/12/04(金) 18:21:14 ID:???] 質問させてください。 Controllerってどのように分けるものなんでしょうか? 例えば、ショッピングサイトだったら、 ログイン、ログアウト部分、カート部分、購入部分みたいに機能別でしょうか? 作成しているアプリは規模も小さいので、 Controller一つでもできそうなんですが、 後から見たときに管理しやすい形にしたくて。
494 名前:nobodyさん mailto:sage [2009/12/04(金) 19:05:57 ID:???] 設計次第だし、一般論で答えろといわれてもそりゃ無理だ。 質問が曖昧で答えようが無い。 modelと必要機能の一覧ぐらいは示してくれ。
495 名前:nobodyさん mailto:sage [2009/12/05(土) 02:24:29 ID:???] 実際rorでショッピングサイトなんて組まないと思うよ。決裁の認証が通らないと思う。
496 名前:nobodyさん mailto:sage [2009/12/05(土) 07:46:07 ID:???] >>495 ほう。お?なに?誤爆?
497 名前:nobodyさん mailto:sage [2009/12/05(土) 16:59:31 ID:???] PHPの方がマシだな Railsで重要な個人情報を扱うこと自体が怖い 簡易SNSとか個人で使うブログとかもっと軽いノリで作る時にしか使わない
498 名前:nobodyさん mailto:sage [2009/12/05(土) 17:13:02 ID:???] 意味が良くわからん。 開発者のセキュリティを考慮する能力しだいであって言語関係ないだろ。
499 名前:nobodyさん mailto:sage [2009/12/05(土) 17:15:36 ID:???] >>497 のレベルが低いことだけは理解しました
500 名前:nobodyさん mailto:sage [2009/12/05(土) 17:23:34 ID:???] 釣りにしてもレベル低過ぎワロタ
501 名前:nobodyさん mailto:sage [2009/12/05(土) 19:24:59 ID:???] >>498-500 IPAという法人がいましてね
502 名前:nobodyさん mailto:sage [2009/12/05(土) 20:30:01 ID:???] >>501 IPAがどうした? IPAはRuby/Railsに関する調査報告書を発表してる事は知っているし、 その内容はRailsを否定するものではない。 それからPHPについては、明らかに無関係だろう。 PHPなら問答無用でセキュリティに問題のないアプリケーションが出来上がるのか? そんな訳があるまい。セキュリティは言語の問題ではなく、開発者側の問題だ。
503 名前:nobodyさん mailto:sage [2009/12/05(土) 22:08:48 ID:???] >>502 IPAがPHPディスってんのは有名な話だけど、そのことなのかな? IPA ISEC セキュア・プログラミング講座:Webアプリケーション編 第1章 総論:より良いWebアプリケーション設計のヒント www.ipa.go.jp/security/awareness/vendor/programmingv2/contents/003.html
504 名前:nobodyさん mailto:sage [2009/12/05(土) 22:30:14 ID:???] セキュリティが言語選択とは無関係って頭悪すぎだろ
505 名前:nobodyさん mailto:sage [2009/12/05(土) 22:35:11 ID:???] いや、PHPとRubyの2つで考えた場合、 どちらかを選べばセキュリティの問題が解決するってわけではない という事でしょう。 利用する側がセキュリティに対する意識をしっかり持って開発しないと脆弱なシステムが出来上がる。
506 名前:nobodyさん mailto:sage [2009/12/05(土) 23:26:46 ID:???] PHPのフレームワークに比べて Railsってセキュリティホール多い印象がある
507 名前:nobodyさん mailto:sage [2009/12/05(土) 23:49:22 ID:???] >>506 pc12.2ch.net/test/read.cgi/tech/1257139591/181
508 名前:nobodyさん mailto:sage [2009/12/05(土) 23:55:51 ID:???] 印象だけで語られてもな・・・ ソースとかないの?
509 名前:nobodyさん mailto:sage [2009/12/06(日) 00:32:13 ID:???] 馬鹿は伝染るから気を付けよう 相手をしてスレのレベルが下がっていく様を何度も見てきただろう?
510 名前:nobodyさん mailto:sage [2009/12/06(日) 15:27:04 ID:???] 印象も何もChangeLog見れば分かるだろ
511 名前:nobodyさん mailto:sage [2009/12/06(日) 17:50:02 ID:???] お前がchangelogのどのあたりを言ってるのかわからない
512 名前:nobodyさん [2009/12/06(日) 19:37:48 ID:eFQH73Wn] Rails 3 railsnotes.com/rails-3/ [Last Updated: Nov 24th, 2009]
513 名前:nobodyさん mailto:sage [2009/12/06(日) 21:51:40 ID:???] Rails2からだいぶ変わるのかなぁ やっと2系に慣れてきたのにマジでだるいー
514 名前:nobodyさん mailto:sage [2009/12/06(日) 22:07:39 ID:???] どうせならGUI環境にも力入れてほしいわ NetBeansでも良いけど
515 名前:nobodyさん mailto:sage [2009/12/06(日) 22:44:15 ID:???] IDEは別口だろう…
516 名前:nobodyさん mailto:sage [2009/12/07(月) 00:02:15 ID:???] >>476-478 かなり亀ですが、レスありがとうございました。 独自のモデルメソッド?を作ってコントローラから呼ぶみたいなことしてました。 seed.rbはまだ試してないので、今度機会がある時はそちらを利用してみます。 ありがとうございました。
517 名前:nobodyさん mailto:sage [2009/12/07(月) 02:27:18 ID:???] 楽天がRoR使うって言ってたな
518 名前:nobodyさん mailto:sage [2009/12/07(月) 03:43:32 ID:???] いや、すでに使ってるよ。 Ruby会議2009ではスポンサーにもなってるし、Railsに関する発表も行った。 まぁROMA(楽天が開発したKVS)の宣伝も兼ねてたと思うけど。
519 名前:nobodyさん mailto:sage [2009/12/08(火) 01:59:02 ID:???] winでrailsで並列処理って出来ませんか? backgroundrbはwin対応していないらしく・・・ サーバにファイルアップロードして、進捗を表示したい。ここはAJAXかな。 しかも並列処理でファイル変換処理の優先度を設定したい。 力技でやるとしたら、 ファイルかDBに変換処理情報書き出して、WINのタスクで実行して、 出来たファイルのサイズ監視して進捗を返すぐらいしか思いつかない・・
520 名前:nobodyさん mailto:sage [2009/12/08(火) 02:28:49 ID:???] >>519 Threadでごりごりやればなんとかなるんでない
521 名前:nobodyさん mailto:sage [2009/12/08(火) 22:41:01 ID:???] >>519 win32-serviceを使って変換処理を常駐させておいて、 Railsアプリと変換処理をdRubyでつなぐ、とか適当に考えてみた。
522 名前:nobodyさん [2009/12/09(水) 02:23:11 ID:EO2jQSYV] www.chikawatanabe.com/blog/2009/12/webengineer.html
523 名前:nobodyさん mailto:sage [2009/12/09(水) 08:57:42 ID:???] >>519 ファイル進歩具合なら、それは単にAJAXで出来そうな気がするが・・・ 開発用サーバーで一個しか立ててないなら、他の処理はできないかもしれないが
524 名前:nobodyさん mailto:sage [2009/12/09(水) 08:59:29 ID:???] てか、>>204 にヒントがありそうだ。 ・自前のDRbサーバをrunnerで動かす ・kovyrin's loops at master - GitHub github.com/kovyrin/loops
525 名前:nobodyさん mailto:sage [2009/12/09(水) 15:46:47 ID:???] mod_proxy_balancerとmongrelを使っています。 mongrelが起動していないときは Service Temporarily Unavailable というページが出るんですが、これをカスタマイズするにはどうしたらいいでしょうか。 やりたいことは、「現在停止中です。再開見込みは何時何分です。」というメッセージを出すことです。
526 名前:nobodyさん mailto:sage [2009/12/09(水) 16:56:42 ID:???] >>525 mod_〜〜てことはapacheがフロントエンドだと思うんだけど、apacheの設定で503表示をカスタマイズすればいいんじゃまいか?
527 名前:nobodyさん mailto:sage [2009/12/09(水) 17:11:13 ID:???] 質問させてください。 Userモデル Unkoモデル があった場合、UserがUnkoごとにそれを所持しているかの状態を保持するためにUserUnkoPossesionモデルを作りました。 ユーザーのうんこ所持状態で、カラムは has_unko:boolean、user:references、unko:references です。 このような状態で、 unkos = Unko.all user = my_user のようにunkosと現在のuserがある場合、下記のように各unkoごとに userがhas_unkoでunkoを持っているかどうかで場合分け処理したいのですが、 どのように書くのがスマートなものでしょうか? unkos.each do |unko| : end Rails guideのassociationsを見ていたのですが、いまいちスマートな方法がわからず・・・ associationは以下のように書いています。 class UserUnkoPossesion < ActiveRecord::Base has_many :user_unko_possesions has_many :users, :through => :user_unko_possesions end class UserUnkoPossesion < ActiveRecord::Base belongs_to :user belongs_to :unko end
528 名前:nobodyさん mailto:sage [2009/12/09(水) 17:12:25 ID:???] >>527 下の方がミスってました。スマソ class Unko < ActiveRecord::Base ??has_many :user_unko_possesions ??has_many :users, :through => :user_unko_possesions end class UserUnkoPossesion < ActiveRecord::Base ??belongs_to :user ??belongs_to :unko end
529 名前:nobodyさん mailto:sage [2009/12/09(水) 18:06:20 ID:???] RailsをSubversionで共同開発する場合ってgenerateで作成したファイル一つ一つにsvn addするんですか?
530 名前:nobodyさん mailto:sage [2009/12/09(水) 18:29:28 ID:???] >529 $ script/generate xxx -c ... で作る。gitは -g generateを引数無しで実行してみよう。 railsコマンドでも $ svn co testapp (空) $ rails -c testapp $ cd testapp $ svn commit とか。
531 名前:529 mailto:sage [2009/12/09(水) 19:02:19 ID:???] >>530 ありがとうございます! まさに望んでた機能でした。Railsに抜かりなしですね
532 名前:nobodyさん mailto:sage [2009/12/10(木) 08:22:58 ID:???] ActiveMailerでのメール送信がうまくいきません。 ログには Sent mail to xxx@gmail.com とあるので、ActiveMailerがメールを送信しようとしていることはわかりました。 ただActiveMailerが内部でどのようなコマンドを使ってメールを送信しているのかが わからず、困っています。 ActiveMailerでメールが送信できないときに、どのような点をチェックしたらいいのか教えていただけないでしょうか。 たとえばsendmailが使えるか、とか。
533 名前:nobodyさん mailto:sage [2009/12/10(木) 09:22:43 ID:???] ActionMailerは、自分でSMTPをしゃべる(net/smtp)ことも、 外部のsendmailコマンドに任せることも出来る。 設定はこのへんか。 config.action_mailer.delivery_method = :test | :smtp | :sendmail config.action_mailer.sendmail_settings = { :location => '/usr/sbin/sendmail', :arguments = '-i -t' } 以上リファレンスより。
534 名前:nobodyさん mailto:sage [2009/12/10(木) 11:27:09 ID:???] 初学者に対してIDEはどれがおすすめですか? エディタ+コンソールで十分だとは思いますが、もしおすすめがあれば教えてください。
535 名前:534 mailto:sage [2009/12/10(木) 11:30:11 ID:???] 連投すみません。 もしくは、開発に何を使われていますか? 良いところも含めて教えてもらえるとありがたいです。
536 名前:nobodyさん mailto:sage [2009/12/10(木) 11:39:33 ID:???] 初学者は何使っても同じ。ツールの使い方で悩む。 自分が持ってる本に載ってるやつにしとけ。
537 名前:nobodyさん mailto:sage [2009/12/10(木) 12:17:29 ID:???] IDE慣れしてるならNetBeans使った方がいいと思うなあ デバッグ楽ちんだし
538 名前:nobodyさん mailto:sage [2009/12/10(木) 13:57:45 ID:???] >>533 ありがとうございます。 ActiveMailerが内部でどういうコマンドをどういうオプションつきで起動しているか、調べる方法はありますか。 現在以下のような設定を行なっているのですが、うまくいきません。 ActionMailer::Base.delivery_method = :sendmail ActionMailer::Base.sendmail_settings = { :location => '/usr/sbin/sendmail', :arguments => '-i -t', } 現象としては、フォーム入力を受け取ってデータを作成し、そのときにObserverを使ってメール送信するようしています。 しかし実際にフォームを送信すると、HTTPレスポンスが返ってこずタイムアウトします。 どこでエラーになっているのかがまるでわからず、ActiveMailerのソースを読んでいるんですけど。。。わかりません。
539 名前:nobodyさん mailto:sage [2009/12/10(木) 14:00:10 ID:???] sendmail のログを見たらいいんじゃね?
540 名前:nobodyさん mailto:sage [2009/12/10(木) 14:02:07 ID:???] そもそも delivery_method = :test ではうまくいってるのかな。 どうなったか書かれていないからそこからきかにゃならん。
541 名前:nobodyさん mailto:sage [2009/12/10(木) 16:16:30 ID:???] >>534-536 NetBeans使ってるよ。 Eclipse + aptanaもあるが、あれは重くてかなわんなw
542 名前:nobodyさん mailto:sage [2009/12/10(木) 16:23:27 ID:???] debian + emacs + rinari + yasnippet
543 名前:534 mailto:sage [2009/12/10(木) 17:25:42 ID:???] >>542 emacsで開発とか憧れです。 Aptana重いですよね。やっぱりnetbeansですかね。イマイチ使いこなせてない…。
544 名前:nobodyさん mailto:sage [2009/12/10(木) 20:46:43 ID:???] ブラウザの戻るボタンを使わせないために、ブラウザにキャッシュをさせないようにしたいのですが、うまくいかないので相談にのってください。 あるページをブラウザにキャッシュさせたくなくて、以下のようにしました。 hdr = response.header hdr['Cache-Control'] = 'no-cache' hdr['Pragma'] = 'no-cache' hdr['Expires'] = 'Thu, 01 Dec 1994 00:00:00' キャッシュさせたくない理由は、ページを遷移したあとで、ブラウザの戻るボタンを使わせたくないためです。 それで、上のコードでうまくいくかと思ったのですが、うまくいかなくて困っています。つまり、戻るボタンで戻れてしまいます。 Firefox の Live HTTP Headers で見てみると、 Pragma: no-cache Cache-Control: private, max-age=0, must-revalidate Expires: Thu, 01 Dec 1994 00:00:00 というヘッダが出力されてました。なんか、Cache-Controlヘッダが書き変わっているんですが、こんなものでしょうか。 なお環境は Rails 2.3.4、Apache 2.2.13、mod_proxy_balancer + mongrel_rails 1.1.5 です。 よろしくお願いします。
545 名前:527 mailto:sage [2009/12/10(木) 20:58:13 ID:???] class Unko < ActiveRecord::Base has_many :user_unko_possesions has_many :users, :through => :user_unko_possesions # 現在のユーザーが持っているかどうかを返す def is_selected_by_user possesions = user_unko_possesions.find_by_user_id(User.my_user) return possesions ? possesions.has_unko : nil end end Unko.all.each do |unko| puts "#{unko.name} is YOUR UNKO!!" if unko.is_selected_by_user end とかやってみたのですが、ループの度にSQLでfind_by_user_idが走るなど、 富豪的なのですが、もっとよい書き方はないのでしょうか?
546 名前:527 mailto:sage [2009/12/10(木) 20:59:16 ID:???] >>545 is_selected_by_userじゃなかった。has_unko_by_userメソッドでしたミス失礼・・・
547 名前:nobodyさん mailto:sage [2009/12/10(木) 22:55:20 ID:???] unkos = Unko.all( :select => 'unkos.*, user_unko_posessions.user_id', :joins => 'JOIN user_unko_posessions ON user_unko_posessions.unko_id = unkos.id') とすると、それぞれの unko に user_id がついてくるぞ。文字列としてだけど。
548 名前:nobodyさん mailto:sage [2009/12/10(木) 23:03:15 ID:???] unkos = Unko.all(:include => :users) ??
549 名前:nobodyさん mailto:sage [2009/12/12(土) 00:19:41 ID:???] >>544 キャッシュさえしなければ「戻る」を使えないように できると思ってるの?
550 名前:nobodyさん mailto:sage [2009/12/12(土) 01:19:06 ID:???] というかアプリケーションからブラウザのそんなコアな機能を制御出来るの?
551 名前:nobodyさん mailto:sage [2009/12/12(土) 03:46:46 ID:???] キャッシュしないなら、もう一度取りにくるだけだしな。 プロパや組織のネット管理者に、間に勝手に通過型プロクシ埋め込まれてキャッシュされる事も有るし、無視するブラウザも居るし。 フラッシュかアプレットかジャバアプリかドトネトアプリで、ブラウザに頼らずに自前で制御するしか無いよ。 pc12.2ch.net/test/read.cgi/tech/1252243498/ うーたんブラウザを作るスレ00001 pc12.2ch.net/test/read.cgi/tech/1023546699/ Geckoベースのブラウザを作ろう。
552 名前:nobodyさん mailto:sage [2009/12/12(土) 08:15:13 ID:???] 全部のページに 戻るボタンからアクセスされたら 元のページにForwardするjavascriptを埋めておく
553 名前:nobodyさん mailto:sage [2009/12/12(土) 10:37:46 ID:???] urlに?yymmddhhmmssとか現在時刻のライムスタンプつけたらキャッシュされないんじゃないかな? 自分は、よく更新されるファイルをこれで最新版返すようにしたよ。
554 名前:nobodyさん mailto:sage [2009/12/12(土) 11:08:16 ID:???] ちゃんとよく読んでレスしろよ なんで戻らせたくないのかは書いてないが、 戻るボタンを押すとなんたらかんたらってメッセージが出るからじゃないのか?
555 名前:527 mailto:sage [2009/12/12(土) 12:40:11 ID:???] >>547-548 ああ!そういうときにjoinsとかinclude使うのか。 SQLとかの知識少ないせいか最初、意味分からんかったw サンクサンクス 試してみます
556 名前:nobodyさん mailto:sage [2009/12/12(土) 12:42:12 ID:???] 銀行の利用者用ページだと戻るおしたら戻った先で、表示できないことあるけどそういうことか?
557 名前:nobodyさん mailto:sage [2009/12/12(土) 18:09:44 ID:???] amazonとか注意してないと同じもの二つ注文してたりするよな
558 名前:nobodyさん mailto:sage [2009/12/13(日) 19:52:52 ID:???] そういうのはゴニョゴニュして検出するべきだけどね。 商用フレームワークとかだと当たり前に機能有ったりする。rorなら自前で用意するしかない。 金融系はちゃんと検出して、戻るボタンが押されましたとか表示するね。
559 名前:nobodyさん mailto:sage [2009/12/13(日) 23:56:52 ID:???] そういう細かいケアをするのって日本くらいでは。 ユーザを無能のクレーマーと想定して作るのが生産性下げてると思う。
560 名前:nobodyさん mailto:sage [2009/12/14(月) 00:11:20 ID:???] どうせいくら防御しても、ユーザーはとんでもないことやらかしてくれるからなー。 ダグラス・アダムスの警句は真だ。
561 名前:nobodyさん mailto:sage [2009/12/14(月) 01:29:59 ID:???] 金がらみのシステムとブログシステムとかは考え方を変えないと
562 名前:nobodyさん mailto:sage [2009/12/14(月) 02:24:38 ID:???] >>559 なわけない。 www.google.co.jp/m/search?hl=en&q=Evil+Back+Button 日本人が気にするようなレベルはその先の話。 つまり「◯◯で大丈夫ですよ」と言われたら米国人は安心するが、 日本人はその処理の信頼性を調査する。
563 名前:nobodyさん [2009/12/14(月) 14:08:42 ID:o/Pytjxa] >>558 >金融系はちゃんと検出して、戻るボタンが押されましたとか表示するね。 戻るボタン自体は受け付けてくれないと 本当に戻りたいときに困るよなぁ
564 名前:nobodyさん mailto:sage [2009/12/14(月) 14:28:04 ID:???] もともとのページ遷移モデルが間違ってるんだよな ajax でページ移動が一切起こらない設計にするべき
565 名前:nobodyさん mailto:sage [2009/12/14(月) 18:20:43 ID:???] このスレで言うのもなんだが、WebアプリはSilverLightとかFlashとか、 バイナリにしてしまった方がいいと思うんだ。
566 名前:nobodyさん mailto:sage [2009/12/14(月) 18:40:53 ID:???] >>565 バックエンドはRailsにすればこのスレの範疇w 全部Flashでもいいと思うが一般のwebサービスだとpermalinkとかないとちょっと困るな
567 名前:nobodyさん mailto:sage [2009/12/14(月) 18:47:01 ID:???] 質問があります。 認証プラグインAuthlogicを勉強してみた - MothProgのうしろがわ d.hatena.ne.jp/mothprog/20090331/1238494900#c Authlogicを入れてみているのですが、こちらのページでは下記のように current_userのような現在のユーザーを取得する処理をapplication_controllerにおいています。 def current_user return @current_user if defined?(@current_user) @current_user = current_user_session && current_user_session.user end 上記のように書いてみてうまく行ったのですが、 別のモデルからこのメソッドにアクセスしたいため、Userモデルに置きたいと考えています。 しかし、モデルに置いてUser.current_userなどのように取得する場合、 def current_user return @@current_user if defined?(@@current_user) @@current_user = current_user_session && current_user_session.user end などのようにクラス変数に格納するようにすると何故かうまく動作してくれません。 たぶん、Railsのサーバーの場合、モデルのクラス変数が初期化されないのだと思うのですが、 この場合の対処法はありませんでしょうか?
568 名前:534 mailto:sage [2009/12/14(月) 18:49:03 ID:???] >>566 今はPermalink大丈夫。
569 名前:567 mailto:sage [2009/12/14(月) 18:49:37 ID:???] すいません下のコード間違えました… def self.current_user return @@current_user if defined?(@@current_user) @@current_user = UserSession.current_user_session && UserSession.current_user_session.user end
570 名前:534 mailto:sage [2009/12/15(火) 12:11:56 ID:???] 「Railsによるアジャイル〜」の内容が本当にアジャイル過ぎて内容が理解しにくい…。
571 名前:nobodyさん mailto:sage [2009/12/15(火) 17:23:18 ID:???] Railsで、クッキーが有効かどうかを調べる方法ってありますか。
572 名前:nobodyさん mailto:sage [2009/12/15(火) 23:01:42 ID:???] それは Rails じゃなくて javascript の話です。
573 名前:nobodyさん mailto:sage [2009/12/15(火) 23:48:27 ID:???] HTTPだけでやるには、最初にリクエストが来たときにクッキーを食わせて、 仮ページにリダイレクト、クライアントが改めてリクエストしてくるときに、 リクエストにそのクッキーが入っているかを見る。 で、必要なら仮ページから元のページにリダイレクトし直す。 とかだろうか?
574 名前:nobodyさん mailto:sage [2009/12/16(水) 00:52:24 ID:???] >>572 おいおい・・・
575 名前:nobodyさん mailto:sage [2009/12/16(水) 00:55:11 ID:???] >>573 仮ページを介さずとも同じところにリダイレクトでいいよーな気がする。
576 名前:nobodyさん mailto:sage [2009/12/16(水) 11:59:09 ID:???] ページ推移をゴニョゴニョすればいい。 商用フレームワークなら当たり前についてる機能だ。 rorは自力でがんばれ。 フラッシュは最近もセキュリティの問題が発見されたし脆弱過ぎる。企業とか無効にしてる所も多いしな。後はアイフォンが非対応でマカが騒ぐとか。グーグル携帯使えでおkだが。
577 名前:534 mailto:sage [2009/12/16(水) 16:10:13 ID:???] 何この「商用フレームワークうんぬん」の人気持ち悪い
578 名前:nobodyさん mailto:sage [2009/12/17(木) 15:02:21 ID:???] >>577 同感
579 名前:nobodyさん mailto:sage [2009/12/17(木) 15:38:45 ID:???] FastCGIが嫌われてる理由がよくわからない
580 名前:nobodyさん mailto:sage [2009/12/17(木) 16:53:09 ID:???] Railsとmod_proxy_balancerについての質問です。 現在、あるサイト (www.foo.com ) をRailsでつくりました。 で、それの管理画面を https://securesite.com/foo/admin にしようとしています。 そのために、以下のような設定をhttpd.confに追加しました。 ProxyRequests Off ProxyPass /foo/images ! ProxyPass /foo/stylesheets ! ProxyPass /foo/javascripts ! ProxyPass /foo/ balancer://railsapp/ ProxyPassReverse /foo balancer://railsapp/ <Proxy balancer://railsapp> BalancerMember 127.0.0.1:8000 loadfactor=20 BalancerMember 127.0.0.1:8001 loadfactor=20 </Proxy> これで動くようにはなったんですが、問題があります。 (つづく)
581 名前:nobodyさん mailto:sage [2009/12/17(木) 16:56:09 ID:???] (つづき) ・https://securesite.com/foo/admin/ にリクエストがあった場合、 Rails には /admin/ へのリクエストとして届くようです。 そのため、'/foo' は無視して class AdminController < ApplicationController def index end ... end map.resources :admin とする必要があります。 ・しかしこれだと admin_path() が '/admin' を返すのです。 そうではなくて admin_path() は '/foo/admin' を返すようにしたいのですが、できますか。 ・あるいは、Railsでは map.namespace :foo do |x| x.resources :admin end として、mod_proxy_balancerのほうで securesite.com/foo/admin へのアクセスを Rails に /foo/admin へのリクエストとして渡せることができればいいんですけど、 Apacheのマニュアル読んでも分かりませんでした。そんな設定を知っている人がいたら教えてください。
582 名前:nobodyさん mailto:sage [2009/12/17(木) 23:10:49 ID:???] 「Rails サブディレクトリ」で検索したらいろいろ出てくるけどこういうのと違う? サブディレクトリ下で Rails 2.3 を動かすときの注意点 www.yohasebe.com/2009/5/30/rails23/
583 名前:nobodyさん mailto:sage [2009/12/18(金) 18:46:13 ID:???] Railsがリクエストを受け取ってからコントローラで処理するまでの流れを知りたいのですが、なにかいい方法はありますか。 ソースを読むならここを読めというのがあれば教えてください。 バージョン:Raisl2.3.5
584 名前:nobodyさん mailto:sage [2009/12/18(金) 22:24:46 ID:???] >>579 プロセスの生き死にの管理が面倒。 いつの間にかささってレスポンス返さなくなったときに、 それを発見して、killして、新しいプロセスを立ち上げるというのを 大抵は自前でどうにかしないといけない。 ウェブサーバを落としても、プロセスは生きてたりするしね。
585 名前:nobodyさん mailto:sage [2009/12/18(金) 22:27:39 ID:???] >>583 class ApplicationController < ActionController::Base def index; raise; end end とでもして、ログに出るスタックトレースにしたがってソースを読めばいいかと。
586 名前:nobodyさん mailto:sage [2009/12/19(土) 00:49:48 ID:???] >>585 頭いいなあ!さんくす
587 名前:nobodyさん mailto:sage [2009/12/19(土) 08:50:16 ID:???] >>584 でもruby以外にpythonやマイナーな言語で書かれたものとか混合しようとするとFastCGI以外になさそうなんですよね
588 名前:nobodyさん mailto:sage [2009/12/19(土) 15:47:38 ID:???] 定期的に再起動すればいいだけ。 pc11.2ch.net/test/read.cgi/php/1141214874/ 【fcgi】FastCGI 総合スレッド pc11.2ch.net/test/read.cgi/php/1149505269/ 【激速】mod_perl SpeedyCGI FastCGI【激速】
589 名前:nobodyさん mailto:sage [2009/12/20(日) 09:19:26 ID:???] FastCGI入れられる環境なら、Ruby側はpassengerつかっときゃいいような気がするが。 自動再起動機能もあったろう
590 名前:nobodyさん mailto:sage [2009/12/20(日) 09:21:27 ID:???] >>583 NetBeansなどIDEでブレークポイントし掛けてソース追っていく方法はあるよ。 俺はRailsのデバッグ、というかソース追って読むの挫折したw method_missingとかのせいか遷移がわけわからん。
591 名前:nobodyさん [2009/12/21(月) 19:39:55 ID:fEey4yBh] Rails 3 in Action www.manning.com/katz/ Deal of the day for December 21, 2009 Megadeal! 50% off all ebooks archive.constantcontact.com/fs043/1101335703814/archive/1102861452175.html
592 名前:nobodyさん [2009/12/21(月) 22:14:09 ID:fEey4yBh] railsnotes.com/rails-3/
593 名前:nobodyさん mailto:sage [2009/12/23(水) 18:38:55 ID:???] Railsで、404 Not Foundを返すときはどうするのがいいでしょうか。 Merbだとそれ用の例外を投げるという実にわかりやすい方法があったのですが。 ちなみにRails2.3.5です。
594 名前:nobodyさん mailto:sage [2009/12/23(水) 19:02:40 ID:???] コントローラ内で render 凝りまくったエラー画面, :status => :not_found としてもよいけど、例外単位でよければ以下のように。 ActionController::Base.rescue_responsesに例外クラス名とステータスを登録する。 たとえば ActionController::Base.rescue_responses['ArgumentError'] = :bad_request デフォルトで ActiveRecord::RecordNotFound なら :not_found みたいなのが登録さ れている。 通常の例外時の動作は public/STATUS.html を返す(render_optional_error_file) だけなので、これを変更したければ rescue_action_in_pubic などをカスタマイズする。 なお、development だと、そのままでは開発向けエラー画面が出るので、 エラー画面自体の確認をしたいときは config/environments/development.rb の consider_all_requests_local を false にし、ループバック(localhost や 127.0.0.1)以 外のアドレスでサーバにアクセスする。 ソースは action_controller/rescue.rb
595 名前:nobodyさん mailto:sage [2009/12/23(水) 19:31:48 ID:???] >>594 参考になりすぐる!ありがと。
596 名前:nobodyさん mailto:sage [2009/12/23(水) 22:02:53 ID:???] >>594 横体がありがとあい
597 名前:nobodyさん mailto:sage [2009/12/24(木) 00:22:36 ID:???] ファイルをアップロードするときにセキュアにするにはどうしたらよいのでしょうか? ssl通信等を使用する方法はどのあたりを調べるとわかるでしょうか?
598 名前:nobodyさん mailto:sage [2009/12/24(木) 02:13:09 ID:???] >>597 HTTPS自体はアプリ側で特に意識する必要はないよ。 どっちかというとWebサーバの設定。
599 名前:nobodyさん mailto:sage [2009/12/24(木) 09:17:32 ID:???] >>594 例外の処理には rescue_from というのもあるわん。
600 名前:nobodyさん mailto:sage [2009/12/24(木) 20:39:55 ID:???] Herokuってどうなの?
601 名前:nobodyさん mailto:sage [2009/12/25(金) 00:25:14 ID:???] >>598 そうなんですか.ありがとうございます.
602 名前:nobodyさん mailto:sage [2009/12/25(金) 19:50:30 ID:???] ロケーションバーからアクションに直接アクセスされた場合のみ他ページへのリダイレクトをかけたいんですが,どうやればよいのでしょうか? 例えばViewで, <div id="sample"> <%= select("foo", "bar", data) %> <%= observe_field(:foo_bar, { :update => :baz, :on => 'change', :url => { :action => :some_action }, :with => "'foo_bar=' + value"}) %> </div> となっている場合,ブラウザのロケーションバーから直接localhost:3000/controller/some_actionへアクセスされた際に, 他のページへリダイレクトさせたいです. コンボボックスの選択変更によりsome_actionが起動した際には,リダイレクトしないようにしたいです. some_action内にそのままredirect_toを書いてしまうと,コンボボックスの選択変更でsome_actionが起動したときにもリダイレクトしてしまうので困っています.
603 名前:nobodyさん mailto:sage [2009/12/25(金) 20:14:54 ID:???] >>602 request.referrer を見る。(referでも可:-) ただし、送らないように設定している人がアクセスできなくなる。 今回はAJAXみたいなので、別解として verify :xhr => true, :only => :some_action も紹介しておく。今回はたぶんこっちがよいのでは?
604 名前:nobodyさん mailto:sage [2009/12/25(金) 21:35:57 ID:???] >>603 なるほど,そうすればいいんですか. 思ったとおりに実現できました.ありがとうございます.
605 名前:nobodyさん mailto:sage [2009/12/26(土) 04:11:25 ID:???] rails2.3.5使う場合って rubyのバージョンは1.8.6推奨なの? reeは1.8.7出てるから、そろそろ1.8.7?
606 名前:nobodyさん mailto:sage [2009/12/26(土) 09:30:19 ID:???] 2.3系はどっちでもえーよ。 3.0.preでは1.8.6は切り捨て。
607 名前:nobodyさん [2009/12/26(土) 12:36:12 ID:N7t9YIOf] 古い資産がないなら1.8.7使っておいた方が良いような気がする
608 名前:nobodyさん mailto:sage [2009/12/26(土) 14:30:42 ID:???] そもそも、railsの人って1.8.6じゃなきゃダメみたいなイメージがあるんだけど 1.8.6と1.8.7の差ってそんなに大きいの?
609 名前:nobodyさん mailto:sage [2009/12/26(土) 16:12:06 ID:???] 1.8.6を捨てたくなる程度には大きい。
610 名前:nobodyさん [2009/12/26(土) 18:16:55 ID:5fe5VdgJ] Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - (rubikitch d.hatena.ne.jp/rubikitch/20080508/ruby187 drnicwilliams.com/2009/11/03/first-look-at-rails-3-0-pre/
611 名前:nobodyさん mailto:sage [2009/12/26(土) 22:35:03 ID:???] >>600 どうっていうと? デプロイは異常に楽だよ。 DBに溜め込むデータ量が少ない自分専用の小物アプリくらいなら無料でもいける。 まともなアプリを設置するには有料じゃないと無理。
612 名前:nobodyさん mailto:sage [2009/12/27(日) 02:54:47 ID:???] rails3っていつベータリリースされんの?
613 名前:nobodyさん mailto:sage [2009/12/27(日) 03:56:24 ID:???] まだlighthouseにも日付が出てないな。 見たいだけならgitからどーぞ。
614 名前:nobodyさん mailto:sage [2009/12/27(日) 05:59:02 ID:???] from/to日付の入力チェックの際に from>to ならエラーとするようなvalidateを書いたんだが def validate errors.add(:from_date, "日付が不正です。") if (from_date > to_date) end エラー発生時にfrom/toどちらとも赤い四角(class="fieldWithErrors")で囲む方法ってある?
615 名前:nobodyさん mailto:sage [2009/12/27(日) 09:48:34 ID:???] >>614 そういうカスタマイズって、Railsは難しいよねー 質問なんですけど、ruby script/console してから、FooController.new.index()を実行するとエラーになります。 consoleのなかからControllerオブジェクトを生成するただしい方法を教えてください。
616 名前:nobodyさん mailto:sage [2009/12/27(日) 11:42:20 ID:???] >>615 app というオブジェクトがある。 script/console> app.get '/foo/index' のようにリクエストを投げると script/console> app.controller に対応するコントローラがセットされる。
617 名前:nobodyさん mailto:sage [2009/12/27(日) 14:33:15 ID:???] >>614 フレームワークの範囲内でやるには、関係が満たされていないときに 両方を errors.add すればいいんじゃない?
618 名前:nobodyさん mailto:sage [2009/12/27(日) 17:34:38 ID:???] >>605 rubyonrails.org/download みると冒頭に We recommend Ruby 1.8.7 for use with Rails. とある。
619 名前:614 mailto:sage [2009/12/27(日) 19:31:19 ID:???] >>617 それだとエラーメッセージの表示がすっきりしない。 どうしたもんか。
620 名前:nobodyさん mailto:sage [2009/12/28(月) 01:09:51 ID:???] >>619 全く未検証ながら、 ActionView::Base::Helpers::ActiveRecordHelper#to_date_select_tag(など)の定義を app/helpers以下にコピってきて、 error_wrapping(to_date_select_tag_without_error_wrapping(options, html_options), object.errors.on(@method_name)) を、 has_error = case @method_name when :from_date, :to_date; object.errors.on(:from_date) or object.errors.on(:to_date) else objet.errors.on(@method_name) end error_wrapping(to_date_select_tag_without_error_wrapping(options, html_options), has_error) と書き換えた定義を作る。 from_date to_dateのフィールドのエラーを判定するときだけ相方のエラーも考慮。
621 名前:nobodyさん [2009/12/28(月) 06:27:12 ID:6MaAP7GA] Rails and Merb Merge: The Anniversary (Part 1 of 6) www.engineyard.com/blog/2009/rails-and-merb-merge-the-anniversary-part-1-of-6/ The Rails 3 Router: Rack it Up yehudakatz.com/2009/12/26/the-rails-3-router-rack-it-up/
622 名前:nobodyさん [2009/12/30(水) 06:18:07 ID:p1BkGZKi] 【PHP】フレームワーク Akelos pc11.2ch.net/test/read.cgi/php/1187333485/l50
623 名前:nobodyさん [2009/12/30(水) 10:01:16 ID:+1QPHe9X] あけおめ
624 名前:nobodyさん [2009/12/30(水) 11:20:23 ID:p1BkGZKi] Rails and Merb Merge: Performance (Part 2 of 6) | Engine Yard Blog www.engineyard.com/blog/2009/rails-and-merb-merge-performance-part-2-of-6/
625 名前:nobodyさん mailto:sage [2009/12/30(水) 11:30:17 ID:???] 毎日1本ずつかと期待してたがやっとパート2が来たか。
626 名前:nobodyさん mailto:sage [2009/12/30(水) 15:10:49 ID:???] Ruby1.9.2が正式リリースされないと、Railsも正式リリースされないんだろうな 1.9.2はpreview2も出ないし、まだ先なのかね
627 名前:nobodyさん mailto:sage [2009/12/30(水) 15:57:14 ID:???] RubySpec走らせようぜぇ
628 名前:nobodyさん [2009/12/31(木) 06:41:41 ID:0ZeyyLVy] dhh @37signals is already running a few minor apps on Rails 3. We've just started playing w/ porting Basecamp. Exciting times! twitter.com/dhh/status/7208264678 twitter.com/dhh/status/7107817801 Very tentative target date for Rails 3 beta is end of January. But core is staffed with volunteers, so very much subject to change. about 1 hour ago from Echofon
629 名前:nobodyさん [2009/12/31(木) 06:58:56 ID:0ZeyyLVy] @sockmonk 1.8.7. Rails 3 requires 1.8.7. twitter.com/wycats/status/7138079908 dhh @37signals is already running a few minor apps on Rails 3. We've just started playing w/ porting Basecamp. Exciting times! twitter.com/dhh/status/7208264678 Very tentative target date for Rails 3 beta is end of January. But core is staffed with volunteers, so very much subject to change. twitter.com/dhh/status/7107817801
630 名前:nobodyさん [2009/12/31(木) 08:31:33 ID:0ZeyyLVy] Very tentative target date for Rails 3 beta is end of January. But core is staffed with volunteers, so very much subject to change. twitter.com/dhh/status/7208225785 dhh
631 名前:nobodyさん mailto:sage [2009/12/31(木) 14:23:44 ID:???] 何度も書くほどの事かね. dogfooding出来る程度動くようにはなってきたというのはわかった
632 名前:nobodyさん [2009/12/31(木) 22:48:13 ID:0ZeyyLVy]
633 名前:nobodyさん mailto:sage [2010/01/03(日) 01:04:56 ID:???] railsでleft join whereって使えないよな。 has_manyとかはidしか条件にしないし、他の条件を使えない気がする。
634 名前:nobodyさん [2010/01/03(日) 17:24:17 ID:Kv5gn0C+] github.com/rails/arel
635 名前:nobodyさん mailto:sage [2010/01/04(月) 00:12:50 ID:???] >>634 ほほぅ
636 名前:nobodyさん mailto:sage [2010/01/04(月) 00:15:11 ID:???] >>633 :joins 指定すればいいという話ではなく?
637 名前:nobodyさん mailto:sage [2010/01/04(月) 00:32:56 ID:???] Railsの勉強で、簡単なブログツールを作っています。 記事のモデルオブジェクト(Post)にコメント数を表すカラム(comment_count)を作成しているのですが、これの更新方法がよくわかりません。 たぶんトランザクションを使って、コメントが保存できたらcomment_countを1増やすという方法になると思うのですが、 以下のようなコードであっているでしょうか。どなたか添削をお願いします。 def add_comment # ブログ記事のモデルオブジェクトを検索 post = Post.find(params[:id]) or raise ActiveRecord::RecordNotFound.new # コメントオブジェクトを作成し、記事IDを設定 comment = Comment.new(params[:comment]) comment.post_id = post.id begin # トランザクション開始 Post.transaction do # コメントをセーブ comment.save! # コメントがセーブできたら、コメント数を1増やす post.comment_count += 1 post.save! end # エラーがなければ 'OK' を出力 render :text=>'OK' rescue ActiveRecord::RecordInvalid => ex # エラーがあれば、エラーメッセージを出力 errmsg = comment.errors.collect{|arr| arr.join(': ')}.join("¥n") response.status = 422 render :text=>errmsg end end
638 名前:nobodyさん [2010/01/04(月) 01:57:03 ID:14ehE+TL] 無駄が多くて全然railsっぽくない。以下のようにするといいよ。 def add_comment # ブログ記事のモデルオブジェクトを検索 post = Post.find(params[:id]) # raise は明示的に書く必要はない。 # アソシエーションを利用してコメントオブジェクトをビルド(post_idは自動的に代入される) comment = post.comment.build # パラメーターでアップデート(うろ覚えなのでシンタックスエラーがあるかも) comment.update_attributes!(params[:comment]) end コメント数はcomment_countカラムを作らずに以下で数えるほうがいいと思うけど。よほど膨大な(100万単位の)コメントがつかない限り。 Comment.count(:conditions => 条件)
639 名前:nobodyさん mailto:sage [2010/01/04(月) 02:01:50 ID:???] >>636 なるべく生のsql文は使いたくなくて でもまぁこれが一番手っ取り早いか
640 名前:nobodyさん mailto:sage [2010/01/04(月) 02:08:21 ID:???] 営業能力も上げていかないと技術だけでは35歳以上はこの業界では生き残れないと断言しよう 40歳過ぎにもなれば、営業能力70%技術力30%くらいの割合になるマジで 同じ会社で死ぬまで雇ってもらえるなら別だが そんな保障はどこにもない
641 名前:nobodyさん [2010/01/04(月) 02:09:27 ID:14ehE+TL] それに def add comment でなくて、 restfulに書くならばComment Controllerを作って、createアクションで処理する方がいいよ。 before_filter でPost.find(:post_id) を常にしておくべき。 そうすればその情報を使ってアソシエーションに沿ってコメントを作成できる。
642 名前:nobodyさん [2010/01/04(月) 14:14:39 ID:CMnexdc2] Rails 3.0.pre で遊ぶ準備 sakuro.tumblr.com/post/305322764/rails-3-0-pre
643 名前:nobodyさん [2010/01/04(月) 20:11:46 ID:CMnexdc2] Getting a New App Running on Edge weblog.rubyonrails.org/2010/1/1/getting-a-new-app-running-on-edge So people have been attempting to get a Rails app up and running recently. I also have some apps in development on Rails 3
644 名前:nobodyさん mailto:sage [2010/01/04(月) 20:48:54 ID:???] >>637 自習するのは止めないけど、belongs_to の :counter_cache も忘れないで。
645 名前:nobodyさん mailto:sage [2010/01/04(月) 23:22:51 ID:???] >>639 亀レスだが has_many :people, :foreign_key=> 'original_key_name' とかじゃダメなのか?
646 名前:nobodyさん mailto:sage [2010/01/05(火) 02:00:40 ID:???] >>645 おぉ。これでkeyを指定できるようになるのか。便利。
647 名前:nobodyさん mailto:sage [2010/01/05(火) 06:24:05 ID:???] >>638 どうもありがとうございます。raiseは書かなくていいんですか。なるほどー。 > コメント数はcomment_countカラムを作らずに以下で数えるほうがいいと思うけど。よほど膨大な(100万単位の)コメントがつかない限り。 > Comment.count(:conditions => 条件) すべての記事を、コメントやトラックバックの多い順でソートする機能を付けようとしています。 その場合、記事ごとにコメント数がついていたほうが簡単かつ高速なので、comment_countカラムを作っています。 とりあえず、トランザクションまわりについては>>637 であってるのでしょうか。 詳しい方、お願いします。
648 名前:nobodyさん mailto:sage [2010/01/05(火) 10:27:07 ID:???] >>647 コメント削除したらコメントカウントのカラムもupdateしないといけない 面倒くせ
649 名前:nobodyさん mailto:sage [2010/01/05(火) 10:42:18 ID:???] ソートする機能を考慮しても コメント数はcomment_countカラムを作る必要性がわからん また高速性を考えるならrailsを使う意味がない、生産性重視ならcomment_countカラムはいらん
650 名前:nobodyさん [2010/01/05(火) 10:57:18 ID:DXl89df8] イノベーションのジレンマ - Wikipedia ja.wikipedia.org/wiki/%E3%82%A4%E3%83%8E%E3%83%99%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%82%B8%E ディスラプティブ技術 - Wikipedia ja.wikipedia.org/wiki/%E3%83%87%E3%82%A3%E3%82%B9%E3%83%A9%E3%83%97%E3%83%86%E3%82%A3%E3%83%96%E6%8A%80%E8%A1%93 スタートアップの始め方 www.aoky.net/articles/paul_graham/start.htm テクノロジーの世界では、常にローエンドがハイエンドを食っている。 安価な製品をより強力にするほうが、強力な製品を安くするよりも簡単なのだ。 だから安価でシンプルというところから始めた製品は徐々に強力なものへと成長していき、水が部屋に満ちるように、 「ハイエンド」の製品を天井の方へと押し込めることになる。 Sunはこれをメインフレームに対して行い、IntelはSunに対して行っている。
651 名前:nobodyさん [2010/01/05(火) 14:54:37 ID:s5/1mF78] Twitter創始者が語るWeb 2.0の要諦 ― @IT www.atmarkit.co.jp/news/200711/16/twitter.html Railsを使って2週間でプロトタイプが完成 ウィリアム氏がOdeo内で始めた小さなプロジェクトが「Twitter」だ。 Ruby on Railsを使って2週間で最初の動くバージョンを作り上げたという。 Twitterをはじめると2週間でブログの更新が止まる理由 そしてはじまる(かもしれない)総表現社会 - mizchi log d.hatena.ne.jp/mizchi/20090711/1247265579
652 名前:nobodyさん mailto:sage [2010/01/05(火) 22:42:48 ID:???] >>647 transactionの使い方はそんな感じでいいと思う。 do..endのなかでsave!とかupdate_attributes!ね。AR::RecordNotSaved系の 例外が飛んで、transctionがrollbackする。 ただ、検索したり保存したりは >>638 の書いているコードのほうがキレイなので それを参考にした方がいい。 コメント件数は>>644 のいうとおり、counter_cacheを使うと同じようなことを ARが勝手にやってくれるので、プロダクションコードではそちらを使う方がいいと思う。 あと >>649 > また高速性を考えるならrailsを使う意味がない、生産性重視ならcomment_countカラムはいらん んなこたない。 counter_cacheなり、それの自作なりを使わないでソートするためには、 Rubyでゴリゴリ書くか、相関サブクエリ使うことになると思うんだけど、 前者はさすがに遅い/無駄だし、後者は面倒なだけだと思うんだけどどうか。
653 名前:nobodyさん mailto:sage [2010/01/06(水) 03:03:28 ID:???] >>652 コメントカウント出すサブクエリなんてなんて1分もあれば書けるだろ 面倒なのかな?
654 名前:nobodyさん [2010/01/06(水) 12:25:42 ID:3+83O9QS] Rails 3 in Action www.manning.com/katz/ Yehuda Katz MEAP Release: 2009 Softbound print: April 2010 (est.) | pages ISBN: 9781935182276 1. Building Your First Rails 3.0 Application 2. Overview of the Rails stack(s) + architecture 3. Creating Rails Applications 4. Using DataMapper for Models 5. Using ActiveRecord for Models 6. Other Choices for Models 7. Processing Requests 8. Routing in Rails 3 9. Customizing Views 10. Working on the Client Side 11. Supporting Characters 12. Using the Plugin API 13. Testing Your Applications 14. Deploying a Rails Application 15. Scaling Rails Appendix A Just enough advanced Ruby Appendix B The migration story Appendix C Rails 2 to Rails 3 Appendix D Merb 1 to Rails 3
655 名前:nobodyさん [2010/01/06(水) 16:39:08 ID:3+83O9QS] www.engineyard.com/blog/author/yehudakatz/
656 名前:nobodyさん [2010/01/06(水) 16:45:50 ID:3+83O9QS] Rails 3 beta eyed for late January release www.computerworld.com/s/article/9143084/Rails_3_beta_eyed_for_late_January_release?taxonomyId=1
657 名前:nobodyさん [2010/01/07(木) 09:51:46 ID:acpOW5s0] David Heinemeier Hansson Bibliography www.amazon.com/David-Heinemeier-Hansson/e/B001JS19Y8/
658 名前:nobodyさん mailto:sage [2010/01/08(金) 02:25:13 ID:???] SQLite3で排他制御する場合どうすればいいですか? SQLite3にはSELECT FOR UPDATEはないので find(:lock => true)は使えないですよね。 トランザクションを BEGIN IMEDIATE TRANSACTION で開始すればいいのじゃないかと思うんですが どこに書いたらいいものか分かりません。
659 名前:nobodyさん [2010/01/09(土) 14:09:25 ID:C3iGMVdd] SELECT FOR UPDATE なんて使わないから、使える
660 名前:nobodyさん [2010/01/09(土) 18:20:07 ID:eVooFF5+] Phusion Passenger 2.2.9 released blog.phusion.nl/2010/01/08/phusion-passenger-2-2-9-released/ Fixed compatibility with Rails 3.
661 名前:nobodyさん mailto:sage [2010/01/10(日) 02:02:57 ID:???] >>659 すいません。 だれ(なに)が使わないので だれ(なに)が使えるのでしょうか?
662 名前:nobodyさん [2010/01/10(日) 12:04:22 ID:shGxwVTU] intertwingly.net/projects/dashboard.html
663 名前:nobodyさん [2010/01/10(日) 12:10:39 ID:shGxwVTU] intertwingly.net/projects/AWDwR4/
664 名前:nobodyさん mailto:sage [2010/01/10(日) 21:44:08 ID:???] >>659 小学生でもわかる日本語でおねがいします
665 名前:nobodyさん mailto:sage [2010/01/11(月) 11:52:44 ID:???] 馬鹿にはrorは無理。
666 名前:nobodyさん mailto:sage [2010/01/11(月) 17:01:28 ID:???] config/environment.rb にいろんな設定書くけど、 独自に設定を追加してもいいんでしょうか。 Rails::Initializer.run do |config| config.my_value = 'foobar' end みたいな。 あと、それを追加したとして、読み出す方法を教えてください。
667 名前:nobodyさん [2010/01/11(月) 19:32:25 ID:yaZxWBJR] ActiveModel: Make Any Ruby Object Feel Like ActiveRecord yehudakatz.com/2010/01/10/activemodel-make-any-ruby-object-feel-like-activerecord/
668 名前:nobodyさん mailto:sage [2010/01/11(月) 20:46:07 ID:???] >>666 config(Rails::Configuration)はRails本体の設定しか受け付けない。 定数使って MY_CONFIG = { :foo => 'bar', :hoge => 'fuga' } のようにするのが手っ取り早い。 ちなみにアプリの利用者が変更する必要がない設定は config/environment.rbやconfig/enviroments/*.rbに書く。 利用者が変えられる設定ならconfig/initializers/*.rbに書く(2.0以降のみ)。 設定が大量になりそうならYAMLファイルで外に出してenvironment.rbなどから読み込むか、 configatronのようなプラグインを使うか。
669 名前:nobodyさん mailto:sage [2010/01/12(火) 00:22:34 ID:???] 質問主ではないが、勉強になった。 ありがとん > 668
670 名前:nobodyさん mailto:sage [2010/01/12(火) 03:14:39 ID:???] ここでアホな質問してる人らって、わからんことあったらまずここに書いて のんびりテレビでも見てんの?
671 名前:nobodyさん mailto:sage [2010/01/12(火) 04:35:12 ID:???] アホな質問続きだが railsで使用しているpluginのバージョンを一括表示する方法ってない? script/about みたいな感じで。
672 名前:nobodyさん [2010/01/12(火) 04:46:22 ID:609VTkN+] Rails and Merb Merge: Plugin API (Part 3 of 6) | Engine Yard Blog www.engineyard.com/blog/2010/rails-and-merb-merge-plugin-api-part-3-of-6/
673 名前:nobodyさん mailto:sage [2010/01/12(火) 19:07:46 ID:???] Paginateを使いたいのですが以下のエラーが出ます。 --- undefined method `total_pages' for #<Array:0x5bcc4d8> Extracted source (around line #42): 42: <%= will_paginate @items %> --- scaffoldで新しくひな形を作り、 environment.rb の一番下に require 'will_paginate' index.html.erb の一番下に <%= will_paginate @items %> pages_controller.rb に def list @items = Item.paginate :page => params[:page], :per_page => 10 end これらを追加しただけなのですが、何が原因でしょうか。
674 名前:nobodyさん mailto:sage [2010/01/12(火) 20:02:14 ID:???] 質問させてください。 テストサーバー(staging環境)用にproduction環境でRailsアプリを動かしているのですが、 エラーが出たときにサーバーにもぐっていちいちlog/production.logを見るのが面倒です。 また、サーバーのログイン権限が無い開発者にもローカルの開発サーバー(webrickやmongrelのdevelopment環境)のように エラー内容を人目でわかるようにしたいのですが、そのようにエラーを表示する方法はないものでしょうか?
675 名前:nobodyさん [2010/01/12(火) 20:27:20 ID:4XZzyMEc] >>666 configatron www.moongift.jp/2008/09/configatron/
676 名前:nobodyさん mailto:sage [2010/01/12(火) 22:54:24 ID:???] >>673 なぜpages_controller.rb? その説明だけだと、items_controllerになりそうな感じだけど。
677 名前:nobodyさん mailto:sage [2010/01/12(火) 22:57:41 ID:???] >>671 これ使うとか。自分はまだ使ったことないけど。 github.com/grosser/tracked_plugins >>673 ヘルパーメソッドのwill_paginateに渡すのはArrayじゃなくて、 paginateの戻り値のWillPaginate::Collectionじゃないといけない。 なので、コントローラかビューのなかで@itemsをArrayにしちゃってないか確認してみて。 >>674 ・Exception Logger:DBにエラーを保存してアプリ上で閲覧 ・Exception Notifier:エラーをメールで送信 ・Syslogに記録:blog.s21g.com/articles/229 ・Clarity:ログ監視ウェブアプリ www.moongift.jp/2009/11/clarity/
678 名前:nobodyさん [2010/01/14(木) 21:03:02 ID:MmCuc8fs] Do One Thing for Rails 3 on January 16th and 17th railsbridge.org/news_items/10
679 名前:674 mailto:sage [2010/01/14(木) 21:35:26 ID:???] >>677 たくさんありがとうございます! 一番下の見ていて、webでログ監視すればいいのかって気づいて tailコマンドのphp版設置してみました。部内LANサーバーなので問題ないです。 php1ファイルで設置らくちんw ちょっと不便ですが、致命的になるまではこれで試してみます。 jQueryとPHPでLinuxのtailコマンドを実装する - EC studio 技術ブログ techblog.ecstudio.jp/tech-tips/phptail.html
680 名前:nobodyさん mailto:sage [2010/01/15(金) 16:09:17 ID:???] MYSQLで以下のようなテーブルを使っています。 | id | name | email | check(boolean型) | restful_authenticationプラグインのsignupでユーザーを新規登録した時、 "check"に自動的に0の値を入れたいのですがどのようにすれば良いでしょうか?
681 名前:nobodyさん mailto:sage [2010/01/15(金) 17:33:21 ID:???] スキーマ定義を触れるならMySQLのcreate tableのほうで、 checkカラムにデフォルト値0を設定しておけばいいと思う。 create/save時に未指定なら0が入る。 あとはbefore_saveとかafter_initializeとかのフック。
682 名前:nobodyさん mailto:sage [2010/01/16(土) 04:57:42 ID:???] >>680 はてなのタケルンバさんのblogで丁寧にまとめられていますよ
683 名前:nobodyさん mailto:sage [2010/01/16(土) 20:30:35 ID:???] 基本的にJava屋で、今年からRailsをやってます。 find_by_sqlってのを見つけた瞬間、 find_by_sql("select col1, col2 from table") って感じで使いまくってんだけど、これっていいのだろうか? だっせー、かっこわりーって思われないだろうか?
684 名前:nobodyさん mailto:sage [2010/01/16(土) 20:37:30 ID:???] 求めるタスクがこなせてるならいーんじゃない?
685 名前:nobodyさん mailto:sage [2010/01/16(土) 21:25:58 ID:???] >683 ダサい。 なんでリファレンスをちゃんと読まないんだ。自称Java屋のくせに。
686 名前:nobodyさん mailto:sage [2010/01/16(土) 22:29:46 ID:???] >>683 ほんとにその程度のSQLで使ってるのなら、 ださいとかじゃなくてありえない
687 名前:nobodyさん mailto:sage [2010/01/16(土) 23:25:29 ID:???] もう転職考えた方がいいレベル
688 名前:nobodyさん mailto:sage [2010/01/17(日) 00:01:02 ID:???] >>683 >find_by_sql("select col1, col2 from table") あれ、Table.find() って col1, col2 の指定ってできたっけ? できなかったと思うから、自分もfind_by_sqlよくつかうよ。
689 名前:nobodyさん mailto:sage [2010/01/17(日) 00:04:41 ID:???] 外のカラムが不要な場合は Table.find(:all, :select => 'col1, col2')
690 名前:nobodyさん mailto:sage [2010/01/17(日) 00:05:44 ID:???] うおっ × 外(ほか) ○ 他(ほか)
691 名前:nobodyさん mailto:sage [2010/01/17(日) 03:56:17 ID:???] タケルンバに失笑されるレベル Javaフレームワークは使ったことないんだろか
692 名前:nobodyさん mailto:sage [2010/01/17(日) 10:33:43 ID:???] >>688 間違えた、find_by_sql()じゃなくてActiveRecord::Base.connection.select_rows(sql)だった。 group byやhavingが入るようなsqlだとこっちのほうが楽なんだけど、そんなことない?
693 名前:nobodyさん mailto:sage [2010/01/17(日) 10:41:10 ID:???] AR::Baseとして取り出す必要がないならそれも手ではある。
694 名前:nobodyさん mailto:sage [2010/01/17(日) 11:30:47 ID:???] パフォーマンス(笑)のためだったりするんだろうか。
695 名前:nobodyさん [2010/01/17(日) 16:13:12 ID:mYKzzqeT] 683です。 なるほど、やっぱりダサいのか ちなみに例に上げたのは簡単なやつだけど 実際に使ってるのは、サブクエリーが絡むような複雑なやつなんだけどね >> 691 Hibernate使ってたけど、あまり好きじゃないね >> 694 find_by_sqlの方が、パフォーマンスよくなるん?
696 名前:nobodyさん [2010/01/18(月) 09:03:43 ID:BApO165G] 日本の富豪40人(2010年) - フォーブス長者番付・億万長者ランキング memorva.jp/ranking/forbes/201001_japan_richest40.php 田中良和 グリー創業者 IT 32 1.60 1456億円 笠原健治 ミクシィ創業者 IT 34 0.72 655億円
697 名前:nobodyさん [2010/01/19(火) 13:32:36 ID:aU7LUmun] passengerでrails動かしたいのですが、 DocumentRootにアクセスしてもdispatcher.fcgiのソースが表示されてしまいます。 これって正しくモジュールが読み込まれてないからなんでしょうか。 httpd.confにはLoadModuleもしてるしapacheのエラーは出てません。 LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9/ext/apache2/mod_passenger.so PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9 PassengerRuby /usr/bin/ruby どなたか原因解明の手がかりwご存知の方ご教授願います。
698 名前:nobodyさん mailto:sage [2010/01/19(火) 23:30:34 ID:???] .htaccessはどうなってる?
699 名前:nobodyさん mailto:sage [2010/01/20(水) 16:17:25 ID:???] railsを勉強しようと思うんですが、初心者向けで お勧めの本はありますか?あるいは、これは読んで おくべき本でも構いません。
700 名前:nobodyさん mailto:sage [2010/01/20(水) 17:16:39 ID:???] ちょっと古いかもしれないけど かんたんRuby on RailsでWebアプリケーション開発 著者 arton さん ttp://www.amazon.co.jp/dp/4798111570
701 名前:nobodyさん mailto:sage [2010/01/20(水) 17:53:46 ID:???] >>699 ム板で回答しておいたのでそれを貼っときます。 Ruby 初心者スレッド Part 33 pc12.2ch.net/test/read.cgi/tech/1259990485/804 804 名前:デフォルトの名無しさん[sage] 投稿日:2010/01/20(水) 16:21:54 >>800 初心者が最低限これだけあればまずはなんとかなる!って書籍を3つ。 というか俺が実際にRails初心者レベルで仕事で使った本 ・RailsによるアジャイルWebアプリケーション開発 www.amazon.co.jp/dp/4274067858/ ・Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応 www.amazon.co.jp/dp/4839928266/ ・Railsレシピブック 183の技 www.amazon.co.jp/dp/4797336625/ あとは、webサイトだけど公式のガイド。ちょっとしたわからんことはまずこれ見たら大体すむ Ruby on Rails guides guides.rubyonrails.org/ 毎回聞かれてるんで、Railsスレテンプレに入れといていいと思うんだ・・・
702 名前:nobodyさん mailto:sage [2010/01/20(水) 17:58:26 ID:???] ついでに質問いいでしょうか? script/serverで開発用のmongrelなどを立ち上げた場合は、 動的に読み込んでくれているためか大概は開発中にファイルの編集後でも コードの反映はサーバーを立ち上げ直さずにブラウザのリロードで済みますよね? こういうのをscript/consoleでする方法ってないもんでしょうか? script/consoleの再起動はそんなに重くないとはいえ、何回もやってたらけっこう面倒です。 再度requireする?のがよいんでしょうか?
703 名前:nobodyさん mailto:sage [2010/01/20(水) 17:58:49 ID:???] >>699 最近、Head First Railsて本の翻訳が出てて、洋書を読んだ感じだとだいぶよかった。 Rails 2.3にも対応している唯一?の本なので、独特のテンションが嫌いじゃなきゃかなりオススメ。
704 名前:nobodyさん mailto:sage [2010/01/20(水) 18:50:18 ID:???] 質問させてください。 コントローラーのbefore_filterのような感じで、レンダリング前にメソッドを実行するようなフィルタは定義できないものでしょうか? layout/application.html.erb 内でコントローラーのメソッドを(ヘルパー化して)呼ぶしか無いでしょうか?
705 名前:704 mailto:sage [2010/01/20(水) 18:57:33 ID:???] > layout/application.html.erb 内でコントローラーのメソッドを(ヘルパー化して)呼ぶしか無いでしょうか? これダメでした。 ヘルパー内で @hoge = 1234 のようにしてもerbの方に反映されませんね…。 layout/application.html.erb の最初の行にロジックを直書きして対処しました。 何かいい方法ないもんですかね
706 名前:nobodyさん mailto:sage [2010/01/20(水) 19:46:07 ID:???] >>699 Head First Railsが今一番新しくて初心者向けの本、オススメ。 これでわからなかったらRailsは諦めて別なのをやった方がいい。 あと RailsによるアジャイルWebアプリケーション開発の第三版がオススメ 第二版と初版は古いバージョンのRails用だから間違って買うと泣くはめになる。
707 名前:nobodyさん mailto:sage [2010/01/20(水) 19:47:15 ID:???] Rubyスレで質問して、Railスレ逝けと言われて来ました。 今回初めてRubyを仕事で扱うことになり、 RailsによるアジャイルWebアプリケーション開発のT部を読んで Smarty使って、PHPで開発するのとそう変わらないなと思い、 本ちゃんプログラムの解析にかかったのですが・・・ ・ controllers,models,viewsともにjsファイルばかり。 ・ ブラウザでソースをみたら、ログイン画面なのに1万行近くソースがある。 ・ 画面遷移しても、URLは変わらない。 ・ サーバーとクライアントのソースがある? 等、ちょっと見かけたことのない構成でした。 こりゃわからんと思い、参考書の続きを読もうとしましたが、 そもそも参考書読んでわかる内容なのか疑問を持ちまして・・・ そこで、質問なのですが 1.上記のような構成はRailsでは一般的で初心者レベルの話 2.それなりに高度な技術で初心者が参考書を読んだ程度で 太刀打ちできるレベルの内容ではない 3.製作者が変態。そんな作り聞いたことがない。まず見かけない。 いずれですか。 1なら参考書読んで調べます(キーになる単語を教えてくれると助かります) 2ならダメぽと上に報告します。 3なら・・・頑張ります。 以上、教えて下さい。。。
708 名前:nobodyさん mailto:sage [2010/01/20(水) 19:49:37 ID:???] あとRails始めるなら RSpecも同時に調べておいた方がいい。 BDD、TDDなどの開発手法を要チェック。 cucumberも
709 名前:nobodyさん mailto:sage [2010/01/20(水) 19:51:53 ID:???] >>707 >>706
710 名前:nobodyさん mailto:sage [2010/01/20(水) 19:58:41 ID:???] >>707 たぶんほとんど全機能をAJAXで実装しているんじゃないかね。 Railsがその中でどう使われているかは質問だけでは分からないけど…
711 名前:nobodyさん mailto:sage [2010/01/20(水) 20:38:09 ID:???] >>710 ありがとうございます。 確かに、ブラウザの戻るボタンがグレーアウトしてる等 思い当たる節はあります。 AJAXを使用しまくっているという前提に立ってもう一度 解読してみます。
712 名前:nobodyさん [2010/01/20(水) 22:19:08 ID:Qj1mXafK] >>702 reload!
713 名前:nobodyさん mailto:sage [2010/01/21(木) 00:05:32 ID:???] >>704 レンダリング前ってつまりcontrollerのアクション内がそうだけど、 ビューのレンダリングのタイミングで処理したい理由は? >>707 これだよね? www.amazon.co.jp/dp/4274067858/ ソースコード↓を見ても、Ajaxなんて使ってないけど。 www.ohmsha.co.jp/data/link/978-4-274-06785-3/ 第1版しか読んでないけど、最初から全部Ajaxで作るみたいな珍妙な本ではないはず。
714 名前:nobodyさん mailto:sage [2010/01/21(木) 00:14:02 ID:???] >>713 本で学んだ後「本ちゃんのプログラム」にとりかかっている、と解釈した。
715 名前:704 mailto:sage [2010/01/21(木) 08:26:59 ID:???] >>713 ありがとうございます。 layouts/application.html.erbのサイドバー内に サイドバーなどにDBからクエリーしてきた最新の結果を常に表示したい、という感じです。 例えが難しいのですが、例えば睡眠時間を記録するサイトで サイドバーに今日の睡眠時間、といったような数値を表示したいとします。 その場合、application_controllerにbefore_filterかまして 毎度呼ばれるのメソッド内にて今日の睡眠時間を取得する処理を書くと、 コントローラー内で処理をする前の数値を取得してしまいます。 コントローラー内で処理をした後の数値を表示したいのです(つまりできるだけレンダリング前に)。 なので、layouts/application.html.erbの先頭に、 今日の睡眠時間を取得する処理を書いちゃえ!ってことなんですが、 (できるだけモデル依存部はモデルに書くとしても)そういうロジックをviewに各のはどうなんだ、と思った次第です。
716 名前:nobodyさん mailto:sage [2010/01/21(木) 08:32:44 ID:???] >>707 適当に予想します。 jsばっかり=フロントエンドがAJAX(JavaScript)、バックエンド処理がRails (それでもmodelsがjsばっかりはない気が?) JS(AJAX)がクライアント処理、サーバーがRailsと見た。 RSSリーダーのOpen Fastladder(Livedoor ReaderのRails実装でソース公開されてるやつ) みたいなのをイメージしたんだけど違うかな。 つまり、RailsでwebアプリのAPIをガリガリ書いて、JavaScriptでガワを作るような構造。 まずは、テストコードを読むことから始めたらどうかな? ちゃんとしたアプリならテストがたくさん書かれているはずなので、 どんな感じにモデルを扱っているかとか仕組みがわかるはず。
717 名前:nobodyさん mailto:sage [2010/01/21(木) 09:21:00 ID:???] >>715 after_filterじゃいかんの?
718 名前:nobodyさん mailto:sage [2010/01/21(木) 11:03:39 ID:???] scaffoldした時のshowアクションの挙動を止めたいんですが、何か方法はありますか? 新しい独自のアクション(hoge)を追加したときに、コントローラ名/hogeというアドレスに アクセスすると、showアクションでIDがhogeという風に動作してしまいます route.rbにて:exceptや:onlyなどを用いてshowアクションを取り除くようにしてみましたが、いずれも駄目でした
719 名前:nobodyさん mailto:sage [2010/01/21(木) 19:03:10 ID:???] migrationの質問です。 DBのmigrationでself.downに元に戻す処理を書くと思うのですが、 カラムの追加や変更等簡単な処理は元に戻す処理は簡単にかけるのですが、 例えば、仕様変更であるキーの重複するレコードを削除するとか、その処理を元に戻す場合だと 処理が複雑で簡単には元に戻せなかったりしませんか? そのような場合、self.downをどのように書いたものでしょうか? self.upで変更するレコードを外部ファイルにまるごと(mysqldumpとかで)ダンプして、 self.downで戻すときはダンプしたのを(mysqlコマンドに)つっこむとかそういうったことしないといけないものなのでしょうか? 今は、整合性が取れなくならない場合(カラムとかをいじらないとか)で元に戻す処理が複雑な場合は、 self.downを書かなかったりしますが、どうしたものかなーと。 運用サーバーの方ではcapistranoでデプロイでdb:migrateをかけるときには 自動でmysqldumpするようにしかけてあるのでバックアップ自体は大丈夫なのですが・・・
720 名前:nobodyさん mailto:sage [2010/01/21(木) 19:22:34 ID:???] >>718 rake routesしてルーティングを確かめるんだ!!
721 名前:707 mailto:sage [2010/01/21(木) 22:01:06 ID:???] >>716 >jsばっかり=フロントエンドがAJAX(JavaScript)、バックエンド処理がRails そんな感じでした。 フロントエンドで、SproutCore(始めて知ったのですが)を使用してました。 サーバーがRailsで、作りとしては、 最初にガサっとサーバーからデータを取ってきて、 フロントエンドで加工して使いまわして、 必要なときだけサーバーとデータをやり取りする感じでした。 >(それでもmodelsがjsばっかりはない気が?) クライアント側を見ていました。 SproutCoreの構成がRailsによく似てたので。。。 サーバー側では、ちゃんとrbファイルがありました。 また、ブラウザでソースみたら1万行近く云々と言っていたのは どうも、SproutCoreはビルドできるらしく、1つに固められた rhtmlファイルのソースを閲覧していたみたいです。 今、試しに元のソースをビルドしようとしたら、文法エラー undefined local variable or method 'output' でビルドに失敗したので、このソースは本当にビルドできるのか 先方に確認中です。 まさかとは思いますが、Windowsではビルドできない(Ruby1.8.6.111) なんてことはないですよね。。。 また何か進展がありましたら、報告させて頂こうと思ってます。 ありがとうございました。
722 名前:nobodyさん mailto:sage [2010/01/22(金) 01:43:39 ID:???] >>715 いまのところ rails 標準にはないので、github.com/xtoddx/before_render のようなのを使うしか。 before_renderで検索するとこれの他にもいくつか実装が見つかる。 >>718 map.resources :items, :collection => [:hoge] などと書けば良いかと。 詳しくはこの辺で d.hatena.ne.jp/zariganitosh/20080203/1202091772
723 名前:nobodyさん mailto:sage [2010/01/22(金) 01:57:31 ID:???] >>720 なるほど showに関するmapが先に呼び込まれていて、そちらが優先されていることがわかりました 自作アクションに関してconnectを使い、これをshowよりも先に記述するとうまくいきました ありがとうございました
724 名前:nobodyさん mailto:sage [2010/01/22(金) 02:05:07 ID:???] >>722 配列でアクションを指定するのですね 以前は以下のように指定していたのですが、これが原因だったみたいです map.resources :items, :collection => {:hoge => :get} これを先程のように配列指定にしたらすんなり解決しました ありがとうございます
725 名前:nobodyさん mailto:sage [2010/01/23(土) 05:44:49 ID:???] >>721 > まさかとは思いますが、Windowsではビルドできない(Ruby1.8.6.111) そういうことって普通にあるよ。Railsプロジェクトならなおさらじゃないかな。 Rails開発はWindows環境はマイナー環境だと思うのでちゅうい そういうときは、coLinuxとかVMWare使う あとはRuby 1.8.7に上げてみるとか。
726 名前:704 mailto:sage [2010/01/23(土) 05:49:49 ID:???] >>715 ありがとうございます。 実はあの後、layouts/appliacation.html.erbの先頭に @hoge = hogehoge のように書くと 他のyieldするerbからは参照出きなくて困っておりました。 before_renderでgithub等あさってみます。すでにあるということは需要はある要望なんですねw >>717 after_filterだと変数参照出きませんでした。レンダリング後によばれるのかな?うーんん。
727 名前:nobodyさん mailto:sage [2010/01/23(土) 09:43:12 ID:???] after_filterは、ページ全体をgzip圧縮するとか、携帯向けにShift_JIS+半角仮名 にするとかだねー。
728 名前:nobodyさん mailto:sage [2010/01/23(土) 17:17:27 ID:???] 特定ページのログを出力しない方法ってないのかな? ファイル管理のコントローラだけ、ページ表示するたびにいっぱいログが出るので、 ログを出さないようにしたいんだけど、情報無いのよね。。。 他のページはデフォルトのログ出力のままがいい。 コントローラでconfigのlogレベルをいじろうと思ったんだけど、 configなんてのは知らないって怒られちゃった。 動的にconfigいじるのは無理なのかな。 loggerのレベルはinfoでやってます。 あとは、ログレベルをwarnにして、必要なログを手で入れてくかだな。。。
729 名前:nobodyさん mailto:sage [2010/01/23(土) 17:46:50 ID:???] Rails.logger.level = Rails.logger.class.const_get(:FATAL) 3とか4とかベタに書いてもいいけど。
730 名前:728 mailto:sage [2010/01/23(土) 18:27:59 ID:???] >>729 ありがとうございます。 configの動的変更できました。 ただ、途中までのログが出てしまいました。 ファイル管理のコントローラに以下追記。 before_filter :set_log_rebel_warn Processing FilesController#show (for 127.0.0.1 at 2010-01-23 18:18:40) [GET] ・・・ このログを出してるところの前でクリアするか、 出そうとしてるログを消すようにしたらいけるかな。(出来るのか?) もうチョイ調べてやってみます。 助かりましたー!!
731 名前:nobodyさん mailto:sage [2010/01/23(土) 19:55:54 ID:???] ActionController::Base#log_processing ActionController::Base#log_processing_for_request_id ActionController::Base#log_processing_for_parameters あたりをFilesControllerでオーバーライドしてみるとか。
732 名前:nobodyさん mailto:sage [2010/01/23(土) 20:02:09 ID:???] >>707 707に同情するよ。Rails以上にSproutCoreでUIを書くのが大変だと思う。 多分テスト無いよね?なかったらそれこそ地獄だよ。
733 名前:nobodyさん mailto:sage [2010/01/23(土) 20:43:41 ID:???] <%= link_to 'show', :action => 'show', :id => user %> <%= link_to 'destroy', :action => 'destroy', :id => user %> destroy クリックしたら show のページに飛ばされる 画面上の URL が両方 /usr/id になっとるしわけ分からん/(^o^)\
734 名前:nobodyさん mailto:sage [2010/01/23(土) 20:49:09 ID:???] :method 指定したらできたよー <%= link_to 'destroy', { :action => 'destroy', :id => user }, :method => 'delete' %>
735 名前:nobodyさん mailto:sage [2010/01/23(土) 21:11:18 ID:???] ブラウザがDELETEやPUTにまともに対応する日は来るのだろうか。
736 名前:728 mailto:sage [2010/01/24(日) 09:31:59 ID:???] >>731 ActionController::Base#log_processing をオーバライドでいけました。 ありがとうございます。助かりました。 いやしかし、rorはいいですなー。楽だー!!
737 名前:nobodyさん mailto:sage [2010/01/24(日) 14:35:45 ID:???] django も忘れないで~
738 名前:nobodyさん mailto:sage [2010/01/24(日) 14:59:53 ID:???] ど・・・Django
739 名前:707 mailto:sage [2010/01/24(日) 15:24:37 ID:???] >>725 ご指摘ありがとうございます。 sroutcoreのバージョンを0.9.11に戻したらビルドできました。 が、ビルド後出来上がったrhtml,jsファイルが本番と別物の欠陥品でした。 ビルド環境が腐ってるのか、ソースが腐ってるのかわからない状態です。 作成者にVMWareで環境(Macらしいです)もらうことも考えてますが、 PHPでその部分だけ一から作り直すことになるかもしれないです。 もともと社内で使う生産管理システムで、あまりリッチなUIは必要なく 遅い、ブラウザが落ちる等評判もよくないみたいなので。。。 >>732 >707に同情するよ。Rails以上にSproutCoreでUIを書くのが大変だと思う。 ですね。 最初何が何やらわからなかったです。 ただ、大体当たりはついてて修正プログラムも作成はしてあります。 環境が構築できてないので確認は全く出来てませんけど。。。 >多分テスト無いよね?なかったらそれこそ地獄だよ。 テストはあるにはありますが、ユニットテストというよりは、 開発者が色々試した結果を置いてあるだけで、 後でソースを修正する人のためのではないかと。。。 ただ、ブラウザをプラットフォームにして、システム構築する手法に 触れたのは良かったです。 AJAXは、”サーバーとデータやり取りしても画面遷移しない技術” 程度の認識だったので新鮮でした。 将来主流になってくるかもしれないですね。
740 名前:nobodyさん mailto:sage [2010/01/24(日) 17:36:00 ID:???] RoR で↓これは使えますか? ttp://www.smartclient.com/featureExplorer.jsp
741 名前:nobodyさん mailto:sage [2010/01/24(日) 17:42:49 ID:???] >>739 10年後くらいやね
742 名前:nobodyさん mailto:sage [2010/01/24(日) 22:01:02 ID:???] 10年って、10年前がどんな状態だったか考えてのことか?
743 名前:nobodyさん mailto:sage [2010/01/25(月) 13:29:59 ID:???] >>739 すごいなぁ、社内向けのシステムでSproutCore使うとか、 作り手のオナニーか、見積金額上積みのためとしか思えん。 フルスタックのUIフレームワークなら、まだしもdojoの方がメジャーだと思うし。 それに社内のブラウザが全部ChromeかSafariでも無い限り、 まずパフォーマンスに問題が出るとおもう。 Ajaxというか、正しくはJavascriptUIだと思うんだけど、 そういうのは技術的にもう普通だと思う。 GMailやGoogleReaderは多くの人が使ってるだろうし、 GoogleWaveもぜんぶJavascriptでできてる。 ただ、どうしてもコストがかかるので、 低予算の案件が多いWeb制作業界では浸透しないんだと思う。 PHPで一から作り直すくらいなら、Railsだけで作り直してみたらどうでしょうか。 Viewの作成と、Controllerの手直しだけで動くようになる気がします。
744 名前:nobodyさん mailto:sage [2010/01/25(月) 13:50:05 ID:???] 画面遷移ない方が低コストに出来ると思うけどなぁ
745 名前:nobodyさん mailto:sage [2010/01/25(月) 14:33:18 ID:???] >>700 >>701 >>703 >>706 レスありがとうございました。 Head Firstシリーズで始めようと思います。
746 名前:nobodyさん mailto:sage [2010/01/25(月) 16:13:21 ID:???] >>744 もしそうなら是非やり方を教えて欲しい。 デスクトップアプリみたいにFSMでGUIを作ろうとするとどうしてもテストが破綻する。 かといってテスト無しでGUIを作り込むと、あっという間にバグの温床になるし。 現状どうやってるのか、参考になるサイト・書籍などもあればお願いします。
747 名前:nobodyさん mailto:sage [2010/01/25(月) 17:15:57 ID:???] その辺が整備されて実用になるのが10年後っていう意味かな
748 名前:nobodyさん mailto:sage [2010/01/25(月) 19:00:20 ID:???] Dojoもそうだし、Extとか使うと、どうしてもJavascriptUI(というのか?)をメインにしないと、 Javascriptファイルの読み込み時間が長くて使えたもんじゃなかった。 だけど、Extメインにすると、Javascript側の記述がもりもりになって、 サーバ側のフレームワークがなんであってもほぼ関係なくなる、と思う。 Javaだろうが、Rubyだろうが、PHPだろうが。 Javascriptの技術(というか、使ってるJavascriptのライブラリの把握度)の方が重要になってくる。 俺はJavascriptってかなり難しい言語だと思ってて、人にはおすすめ出来ないので、 JavascriptUIは使わないようにしてる。 サーバ側の言語と、Javascript両方ともに熟知して貰わないといけないから。
749 名前:nobodyさん [2010/01/25(月) 19:53:41 ID:zfSMIsHp] How to easily use Rails 3 now ? tomafro.net tomafro.net/2010/01/how-to-use-rails3-gems-now
750 名前:nobodyさん [2010/01/26(火) 06:56:48 ID:ATL7yxma] >>703 とか >>706 も書いてたけど、最近出た Head First Rails って本が超読みやすくてわかりやすくてマジ感動した。 初心者は2ちゃんとか見てる暇あったらとりあえず全員これ買って読むがよいと思うんだ。
751 名前:707 mailto:sage [2010/01/26(火) 10:01:38 ID:???] 続報です。 製作者が元の環境を消してて環境再現ができない。 作り直しは受注元にダメと言われる、と完全にオワタ\(^o^)/ と思ってましたが、どうにかこうにかビルドできる環境を構築できました。 gemとsproutcoreのバージョンを変え、Javaインストールしてetc... 何とかなりそうです。 皆さん。色々とありがとうございました。 >>743 >作り手のオナニーか、見積金額上積みのためとしか思えん。 そうだと思います。金額でも揉めたみたいです。。。 >ただ、どうしてもコストがかかるので、 >低予算の案件が多いWeb制作業界では浸透しないんだと思う。 その点は同意ですが、JavascriptUIの使用者の本命は、 Web製作業界ではなくアプリ製作者だと思います。 ブラウザが今よりも安定・高速・多機能になり、クラウドが一般にも 普及したら、ブラウザ上でゲーム、アプリを作成するのが 主流になるんじゃないかなと。 その方が、ユーザーの負担が減り自由度があがりますし。。。 将来的にはアプリの起動は、OSからブラウザに移行する気がします。
752 名前:nobodyさん mailto:sage [2010/01/26(火) 12:54:27 ID:???] >>707 は6,7年くらい前からタイムスリップしてきたのかと小一時間w
753 名前:nobodyさん mailto:sage [2010/01/26(火) 14:34:11 ID:???] 懲役7年
754 名前:nobodyさん mailto:sage [2010/01/27(水) 01:12:32 ID:???] rails(linux)でmssql使いたいんだけど UnixODBC FreeTDS activerecord-odbc-adapter Ruby ODBC 入れりゃいいの? あとgemで見つけた activerecord-sqlserver-adapter って何?
755 名前:nobodyさん mailto:sage [2010/01/27(水) 01:43:58 ID:???] そんな口の利き方のやつには絶対に教えない
756 名前:nobodyさん mailto:sage [2010/01/27(水) 08:41:54 ID:???] ブラウザが高機能になって安定高速に成った歴史なんて無いしな。 シンプルイズベストで、余計な機能そぎ落としたほうが高速安定すると思うよ。 もうJSとHTMLの拡張辞めればいいw みんなでHTML1.0に戻ろうw ゲーム、アプリは普通にjavaで組むのが、グーグル携帯の先に有ると思うよ。 googleクラスのハカーでもchromeブラウザ上で全て実行させるなんて言い出してないし。 犬上で動くodbc-mssql driverが無いと思うw jruby経由でjdbcでごにょごにょでもすれば? mssql捨てるのが一番だが。
757 名前:nobodyさん mailto:sage [2010/01/27(水) 09:59:14 ID:???] ここでいいのかどうかわからないのですが。 linodeでRailsを動かしている方いらっしゃいませんか。 どのプランで、どういう構成で、どのくらいパフォーマンスが出ているか 分かる範囲で教えていただけると助かります。 よろしくお願いします。
758 名前:nobodyさん mailto:sage [2010/01/27(水) 11:42:12 ID:???] >googleクラスのハカーでもchromeブラウザ上で全て実行させるなんて言い出してないし。 Chrome OS
759 名前:nobodyさん [2010/01/27(水) 12:57:30 ID:vbYrOD4B] intertwingly.net/projects/dashboard.html
760 名前:nobodyさん mailto:sage [2010/01/27(水) 21:35:32 ID:???] html.erbでコメントを入れる場合、 <!-- コメント --> <% # コメント %> どっちでも一応コメントになりますが、どっちの方が正しいやり方でしょうか?
761 名前:nobodyさん mailto:sage [2010/01/27(水) 21:52:40 ID:???] そもそも<!-- -->で囲んでも、ERBの視点ではコメントではない。 ERBはHTML以外の中にも書けることを思い出そう。 <!-- <% RUBY %> --> と書くと RUBY はRubyコードとして評価される ので、<%# %> にしたほうがよいと思う。 たとえば、 <!-- <% 1 + %> --> → Rubyコードが文法エラーになる。
762 名前:nobodyさん mailto:sage [2010/01/27(水) 21:55:07 ID:???] あ、↑Rubyコードをコメント化する場合の話しかしてないや。 出力HTMLソースの中にコメントとして現れて欲しい部分は<!-- -->の中に。 Ruby評価中に解釈したくないRubyコード片は <%# %> の中で。
763 名前:760 mailto:sage [2010/01/27(水) 22:03:08 ID:???] ありがとうございます。 なるほど…どのレベルでコメントになるかっていう違いあるんですね。そこまで頭が回ってなかった。 基本的には<%# %>でほとんど済みそうですね。 HTMLに残さなきゃいけないコメント、、、そんな場面はあり得るのかな?
764 名前:707 mailto:sage [2010/01/28(木) 01:50:38 ID:???] >>752 古いっすか?私の考えw まあ、Webを何年もやってきた同僚の意見は違うし、 私の見当違いである可能性は高いですね。 でもそうなると、ブラウザ上でシステム構築するのは 主流にはならない気がします。 ユーザーが望んでいるのは、付加価値よりも 安く・簡単・便利に使えることだと思うので。 ちょうどWEBメールが普及したように、 WEB画面がリッチになることには金出さなくても 安く簡単にダウンロード出来て、設定する必要もなく どのパソコンでも動くアプリなら性能落ちても金出すでしょう。 でも本当に難しいでしょうね。そんなブラウザ作るのは。。。 >>756 >ゲーム、アプリは普通にjavaで組むのが、グーグル携帯の先に有ると思うよ。 そうなるでしょうね。 実際、携帯でアプリ作成するのが増えてきてません? でも、スペックがPCに比較して落ちるのと、 結局、これまでのPC同様、機種依存が出てくるので 個人的にはブラウザに頑張ってもらいたいのですが。。。
765 名前:707 mailto:sage [2010/01/28(木) 01:55:02 ID:???] スレ違いの話題を長々とすいません。 もう止めときます。 ちなみに修正まだやっとります。 もうこのプログラムやだw
766 名前:nobodyさん mailto:sage [2010/01/28(木) 02:06:38 ID:???] HTML4.0以前、どれだけ苦労したか知らないバカがいるのか
767 名前:nobodyさん mailto:sage [2010/01/28(木) 02:28:56 ID:???] >>707 が結局何を言いたいのかさっぱり分からん
768 名前:nobodyさん mailto:sage [2010/01/28(木) 03:30:24 ID:???] >・ ブラウザでソースをみたら、ログイン画面なのに1万行近くソースがある。 わろすw ajaxもどきでもやってんだろうな jQueryのソース全部貼り付けたとかじゃないかw
769 名前:nobodyさん mailto:sage [2010/01/28(木) 15:24:22 ID:???] >>768 おまえ>>707 以降のレスを全く見てないだろ ほかの影響を考えないで脊髄反射でプログラムを書き換えるタイプだな
770 名前:nobodyさん [2010/01/29(金) 00:30:31 ID:SeyjXxxZ] www.flickr.com/photos/46457493@N00/
771 名前:707 mailto:sage [2010/01/29(金) 04:03:11 ID:???] >>769 ははは。まあまあ。 >>767 私が言いたいのは、宇宙開闢137億年の歴史に比べたら 納期を守れないやら、プログラムが読めないなどは ほんの些細な問題だということです。 もうだめぽ。。。。
772 名前:nobodyさん mailto:sage [2010/01/29(金) 16:59:48 ID:???] ちょっと質問、Rails 2.3.5のプロジェクトなんですが、 国際化は特に考えないで作ってきたんですが、 プラグインが英語で国際化考えてない感じで手を加えたいんですが、 プラグインの国際化ってどうやるものなんでしょう? i18nとかを使うんでしょうか? この辺はどこらの資料を見ればいいですか? 今は英語の部分を日本語にべた書き換えでリリースでも別にいいんですが、 後で英語のプラグイン本家にパッチ送って反映してもらいたいときに、メッセージを国際化しときたいんです。
773 名前:nobodyさん mailto:sage [2010/01/29(金) 18:57:57 ID:???] そのプラグインの名前は?
774 名前:nobodyさん mailto:sage [2010/01/29(金) 21:24:31 ID:???] おれもそうオモタ
775 名前:nobodyさん [2010/01/29(金) 22:55:58 ID:azIwv80e] guides.rubyonrails.org/i18n.html
776 名前:nobodyさん mailto:sage [2010/01/30(土) 02:07:12 ID:???] ちゃんとi18n実装してくれるなら助かるが、なんちゃって日本語実装だとみんなが不幸に成るだけ。 そういう中途半端な日本語対応パッチでみんな苦しんで来てるし。 PC用のUTFと携帯用のSJISとメール用のJISぐらいはまともに実装しないとねえ。
777 名前:nobodyさん mailto:sage [2010/01/30(土) 02:15:30 ID:???] 自分でプラグイン作ればいいじゃん そんな大変なことではないんだが
778 名前:nobodyさん mailto:sage [2010/01/30(土) 02:20:08 ID:???] railsのwebサーバをどうしようか悩んでる。 passengerが楽でいいんだけど 将来的に、ec2でスケールアウトさせることを考えると apache(ngjinx/lighttpd)+mod_proxy_balancer+mongrel_cluster とかの方がいいの?
779 名前:nobodyさん mailto:sage [2010/01/30(土) 03:05:38 ID:???] まずはそこまで支持されるサービスを作りなさい
780 名前:nobodyさん mailto:sage [2010/01/30(土) 03:15:12 ID:???] >>779 確かにそうなんだが ec2に乗せるの前提で話がすすんでるんだ。 猛者はおらんかのぉ。wakame便利そうだけど、正式リリースまだだし。
781 名前:nobodyさん mailto:sage [2010/01/30(土) 04:41:34 ID:???] Rackの価値ゼロだな
782 名前:nobodyさん mailto:sage [2010/01/30(土) 04:49:05 ID:???] うちの会社はrails使うときはapache以外選択肢無いなぁ
783 名前:nobodyさん mailto:sage [2010/01/30(土) 15:57:35 ID:???] テーブルのフィールドの説明ってさ, マイグレーションのファイルにかくべき? モデルに書くべき?
784 名前:nobodyさん mailto:sage [2010/01/30(土) 16:27:22 ID:???] WordとかExcelとか カラムの意味を調べるのに毎回ソース嫁とか言われたらたまらん
785 名前:nobodyさん mailto:sage [2010/01/30(土) 17:00:44 ID:???] せっかくのアジャイル思考フレームワークなのに DB構造変わるたびに毎回Excel編集しろとか言われたらたまらんな
786 名前:nobodyさん mailto:sage [2010/01/30(土) 17:35:17 ID:???] 編集するのは1人、閲覧するのはN人 どちらを優先すべきかは言うまでもない それにそんなにコロコロ構造は変わらん 変わるのなら最初にちゃんと設計しないから デスマでよくあるけどな
787 名前:nobodyさん mailto:sage [2010/01/30(土) 17:59:45 ID:???] >>786 > 編集するのは1人、閲覧するのはN人 え?え?
788 名前:nobodyさん mailto:sage [2010/01/30(土) 18:56:53 ID:???] >>783 まず、マイグレーションでもモデルでもいいがソース上に書いておくべきだと思う。 開発中はソースだけ見れば済むようにしたい。 ソースだけでは分かりづらいなら補足資料は必要だけども。 テーブル定義書は納品物として必要だけど、ドキュメント類は開発が終了してから提出するという事で顧客と事前に約束を取り付けておく。 開発が終了したら、CSEなどのツールで自動生成。そのファイルに日本語の説明を書いていく。 っていうのが自社のやり方。
789 名前:nobodyさん mailto:sage [2010/01/30(土) 19:01:12 ID:???] 仕事のスタイル次第だね うちは自社サービスだけだからドキュメント自体ほとんど存在しない。
790 名前:772 mailto:sage [2010/01/30(土) 19:17:19 ID:???] >>775 公式ガイドみてます。 プラグインところも見ているんですが、 The Basics of Creating Rails Plugins guides.rubyonrails.org/plugins.html 本体だとconfig/lang/以下におけばいいわけですが、 プラグインの場合は、vendor/plugins/hoge/ 以下にconfi/lang/*.yml を配置すればOKなのかな。 >>776 ??よくわからん >>777 今はプラグインをそのまま修正して日本語化してます
791 名前:nobodyさん mailto:sage [2010/01/30(土) 19:17:46 ID:???] テストケースに書いておくのがBDDであり RSpecやCucumberだろう
792 名前:772 mailto:sage [2010/01/30(土) 19:18:37 ID:???] >>773 プラグインはこれです。 phronos's rails_datatables at master - GitHub github.com/phronos/rails_datatables
793 名前:nobodyさん mailto:sage [2010/01/30(土) 19:41:11 ID:???] DataTablesってすごいねぇ。 phronos'sってどうゆう意味だろ?
794 名前:nobodyさん mailto:sage [2010/01/31(日) 18:17:54 ID:???] phronosさんの作ったrails_datatablesってこと。 GitHubのプロジェクトトップページのタイトルは、 <author>'s <project-name> at master - GitHub となる。
795 名前:nobodyさん mailto:sage [2010/02/01(月) 05:15:16 ID:???] なお、masterは、あるgitリポジトリのデフォルトのブランチのこと。
796 名前:nobodyさん mailto:sage [2010/02/01(月) 12:37:55 ID:???] parents, childrenというテーブルがあったとして parents...id, child1, child2というカラムを持っている。それぞれchildrenのidが入る children...id, parents_idというカラムを持っている このようなときに、ある時はchild1を、ある時はchild2をキーにして has_manyでのテーブル結合を切り替えたいのですが、こういう方法は無理なんでしょうか 今は両方ともhas_manyでparentsに追加しているのですが、切り替えができたら嬉しい
797 名前:nobodyさん [2010/02/01(月) 17:47:36 ID:/Gi8FxAx] lingr.com/ スケールアウトからスケールアップへの回帰 japan.cnet.com/blog/kenn/2010/01/12/entry_27036420/ www.slicehost.com/ コピペ運動会 copipe.cureblack.com/ 700万PVのRails製サイトが月$60のVPS(メモリ1GB)で動かせるという話 togetter.com/li/4514 www.linode.com/ gladiators.jp/ オンラインRPGの運営をはじめて1ヶ月経った 環境としては、OSはUbuntuサーバ版なんですが、実はVMware上で動かしていて、ホストOSはWindows XP Professional blog.pettan.jp/archives/50938293.html
798 名前:nobodyさん mailto:sage [2010/02/01(月) 18:27:25 ID:???] どこまで必死なんだよ 宣伝うぜぇ死ねよ
799 名前:nobodyさん mailto:sage [2010/02/01(月) 18:40:58 ID:???] >>796 parentsテーブルがchild1とchild2のIDを持っているということは、やりたいことは parent.children1 や parent.children2 (Parent has_many Child) ではなく parent.child1 や parent.child2 であってる? class Parent < ActiveRecord::Base belongs_to :child1, :class_name => 'Child', :foreign_key => 'child1' belongs_to :child2, :class_name => 'Child', :foreign_key => 'child2' end class Child < ActiveRecord::Base has_one :parent end でいいと思ったんだけど、これじゃchild1とchild2のどっちで結合すればいいか 特定できないからchild側からはparent参照できないのか。 (has_one parent1とかすれば可だけど)
800 名前:nobodyさん mailto:sage [2010/02/01(月) 23:11:35 ID:???] >>798 実働報告なんてほぼ皆無なんだからこちらとしてはありがてーわ。 自治棒は消えろ
801 名前:nobodyさん mailto:sage [2010/02/02(火) 14:14:08 ID:???] >>799 :class_nameというのがあるんですね。なんとかできそうです ありがとうございます
802 名前:nobodyさん [2010/02/02(火) 20:25:53 ID:tGNPNfj/] Rails 3 beta is almost ready for public testing. We're just hammering out the last bugs in Bundler. Stay tuned. about 10 hours ago from Tweetie dhh twitter.com/dhh/status/8522612662
803 名前:nobodyさん [2010/02/02(火) 21:05:33 ID:tGNPNfj/] Screencast: How To Upgrade Your Rails 2 App to Rails 3 in 25 Minutes www.railsinside.com/screencasts/373-rails-3-upgrade-screencast.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+RailsInside+%28Rails+Inside%29&utm_content=Google+Reader blog.peepcode.com/tutorials/2010/live-coding-rails-3-upgrade
804 名前:nobodyさん mailto:sage [2010/02/02(火) 22:47:00 ID:???] 2系から何が変わるんだろ…十分完成されたフレームワークだと思ってたのになぁ
805 名前:nobodyさん mailto:sage [2010/02/03(水) 01:52:04 ID:???] フレームワーク本体を選べるようになるんじゃないの? 中心部分をRailsでつくったり、Marbでつくったりとか。 多機能にしたいならRailsで シンプルにしたいのならMerbでとか
806 名前:nobodyさん mailto:sage [2010/02/03(水) 02:02:40 ID:???] RailsってCでいうmakeファイル書き上げるような物なんだな scaffoldコマンドを実行したら基本的な骨組みができあがるかと思ってたよ ruby script/generateってコマンド打っていても意味を理解していなかったよ。 またscaffoldで作成しちゃったら戻すことは出来ないようだな。 タイムスタンプを利用したファイルをどんどん作って行くみたいだけど 人の手でソースに手を入れた後に、コマンド実行しても大丈夫って事かな?
807 名前:nobodyさん mailto:sage [2010/02/03(水) 02:04:42 ID:???] え?
808 名前:nobodyさん [2010/02/03(水) 02:55:16 ID:YvzJimsv] Railsプログラマのための英語 Part 1 (English) - Smart.fm smart.fm/goals/1591/content
809 名前:nobodyさん mailto:sage [2010/02/03(水) 03:56:45 ID:???] >>806 なんかちょっと勘違いしてませんか?
810 名前:nobodyさん [2010/02/03(水) 05:54:39 ID:YvzJimsv] Rails 3 is coming! The first beta release of the new version is right around the corner and it should be released today or tomorrow… the release notes are already in the master branch. railslove.com/weblog/2010/02/02/on-the-way-to-rails-3-a-link-list/ github.com/rails/rails/commit/428bdb50631ba03847367a15fedb2289269cd789
811 名前:nobodyさん [2010/02/03(水) 05:56:32 ID:YvzJimsv] Ruby on Rails 3.0 Release Notes guides.rails.info/3_0_release_notes.html blog.plataformatec.com.br/2010/02/rails-3-i18n-changes/
812 名前:nobodyさん mailto:sage [2010/02/03(水) 06:58:55 ID:???] ruby script/generate scaffold ******** うごかない。 rake db migrate うごくようになる。
813 名前:nobodyさん mailto:sage [2010/02/03(水) 10:45:44 ID:???] Rails 3リリースオメ!! >>797 こういう事例は紹介してもらえるとありがたい。 しかし、ホストOSがWindowsの仮想マシンでまともに動くのかよw わろた >>806 scaf
814 名前:nobodyさん mailto:sage [2010/02/03(水) 10:50:18 ID:???] >>806 ごめん、途中で送信しちゃった makeは関係ないよ。 makeをruby用にパクッたrakeのRakefileとかはrailsにもあるけど、それのことじゃないでしょ? 多分、宣言的に書くところが多いのでそう思っているだけだと思う。 .rbとか.erbはRubyのスクリプトだよ。ちゃんとした言語だよ。 ライブラリがいろいろやってくれるから、宣言したっぽくかけるけど、ちゃんとスクリプトはそことおっているよ。 scaffoldで作成したのを消すのは、destroyつかえばいけるはずだよ。 ruby script/destroy scaffold ******** その辺のことはrailsガイド読んでね。 Ruby on Rails guides guides.rubyonrails.org/ 後は書籍読むとか。最近は Head first のrailsのがオススメらしいよ。 > タイムスタンプを利用したファイルをどんどん作って行くみたいだけど これはよくわからん??? 同じscaffoldを実行しても、編集した後は上書きしようとしていちいち聞いてくるのは危ないからそうなっているとしか
815 名前:nobodyさん mailto:sage [2010/02/03(水) 11:05:34 ID:???] >>813 リリースされたわけではない。
816 名前:nobodyさん mailto:sage [2010/02/03(水) 11:06:14 ID:???] >>814 >> タイムスタンプを利用したファイルをどんどん作って行くみたいだけど >これはよくわからん??? migration スクリプトのことかと。
817 名前:nobodyさん mailto:sage [2010/02/03(水) 11:14:48 ID:???] twitter.com/a_matsuda/status/8569187999
818 名前:nobodyさん mailto:sage [2010/02/03(水) 11:27:26 ID:???] >>815 あれ?リリースノートでただけなのか。失礼したw
819 名前:nobodyさん mailto:sage [2010/02/03(水) 14:42:44 ID:???] てすと
820 名前:nobodyさん mailto:sage [2010/02/03(水) 18:55:02 ID:???] ちょっとした質問です。 unko_chinkoヘルパーが定義されていた場合に、 コントローラーからunko_chinkoヘルパーをどうしてもどうしても呼びたくなった場合、 コントローラー内で以下のように書くと思いますが、 ApplicationController.helpers.unko_chinko ApplicationControllerコントローラー派生のコントローラーなら、 self.helpers.unko_chinko でいけそうなものなのですが、これではundefinedと言われてしまいます。 これはなんでなんでしょうか?
821 名前:nobodyさん mailto:sage [2010/02/03(水) 22:13:53 ID:???] ヒント ApplicationController.classは何でしょう。 また、その文脈でself.classは何でしょう。
822 名前:nobodyさん mailto:sage [2010/02/03(水) 22:16:06 ID:???] どうでもいいけど >コントローラー内で以下のように書くと思いますが、 >ApplicationController.helpers.unko_chinko helper :unko_chinko じゃね?
823 名前:nobodyさん mailto:sage [2010/02/03(水) 22:26:58 ID:???] 俺がRails3に一番期待することはサーバーのメモリ節約なのだが あまりそういう方向には進まなかったみたいね 1年ぐらい前はめちゃくちゃメモリ節約できるようになるとの触れ込みだったのに
824 名前:nobodyさん mailto:sage [2010/02/03(水) 23:08:00 ID:???] >1年ぐらい前はめちゃくちゃメモリ節約できるようになるとの触れ込みだったのに え?
825 名前:nobodyさん mailto:sage [2010/02/04(木) 02:08:23 ID:???] っつーか Rails つかってるとすぐメモリ使い切って 数日に一回は再起動しないといけなくなるw
826 名前:nobodyさん mailto:sage [2010/02/04(木) 04:34:13 ID:???] >>824 違うの?
827 名前:nobodyさん mailto:sage [2010/02/04(木) 05:41:15 ID:???] railsでメモリ効率とか… 元がrubyなんだし速度とかメモリとか期待しちゃ駄目だ
828 名前:nobodyさん mailto:sage [2010/02/04(木) 06:20:25 ID:???] Passengerでインスタンス立ち上げすぎとか > Railsインスタンスプロセスの立ち上がりすぎ > > PassengerMaxPoolSizeを適切に設定してないとそうなることがある。 Passengerがメモリを食いすぎるとき - ひげろぐ brass.to/blog/passenger_memory_tuning.html
829 名前:nobodyさん mailto:sage [2010/02/04(木) 06:23:17 ID:???] あとはこの辺 Phusion Passenger users guide www.modrails.com/documentation/Users%20guide.html#_resource_control_and_optimization_options Passenger のリソース最適化オプション www.sssg.org/blogs/naoya/archives/1087
830 名前:nobodyさん mailto:sage [2010/02/04(木) 09:21:57 ID:???] >>827 でもさ、ここ数年のシェアの伸び悩みは激安共用レンサバではロクに動かせないからって思わない?PHPみたいにさくらの共用でも動かせるようになれば皆もっと飛びつくのに
831 名前:nobodyさん mailto:sage [2010/02/04(木) 10:29:19 ID:???] いや2000円台で快適に動かせる 2000円台というと少し高いように思えるが、本質はRailsで動かしたいアプリがないからだと思う 本当に動かしたいアプリがあれば普通にそれくらい出すと思うよ やっぱり 利用者>>>>>>開発者 じゃないとな
832 名前:nobodyさん mailto:sage [2010/02/04(木) 12:52:19 ID:???] 海外 VPS なら $6/month くらいからあるよ
833 名前:nobodyさん mailto:sage [2010/02/04(木) 18:29:32 ID:???] いや違う PHPの偉大なところはFTPでアップすればそれだけで動くところ railsもpassengerのお陰でだいぶ楽になったけど、それでも差は歴然としてる
834 名前:nobodyさん [2010/02/04(木) 20:57:57 ID:G38u6Z+m] 【WEB人・詳報版】路上でプログラミング - MSN産経ニュース sankei.jp.msn.com/economy/it/100204/its1002040501000-n1.htm 「Ruby on Rails」を使うようになって1カ月後のことで、 開発期間はおよそ3時間。 ssig33.com/blog/2010-02-04-1.html 金くれ kanekure.ssig33.com/
835 名前:nobodyさん [2010/02/04(木) 21:07:01 ID:G38u6Z+m] VPSプランってどうよ?7 pc11.2ch.net/test/read.cgi/hosting/1256929065/ prgmr.com/xen/ www.linode.com/ www.slicehost.com/
836 名前:nobodyさん [2010/02/04(木) 22:44:09 ID:G38u6Z+m] UK STUDIO - プログラマの報酬について ukstudio.jp/2010/02/04/programmers_pay/ 例えば、優秀な人であればコード量は少なく労働時間も短く作れるものが、 他の人であればコードは肥大化し労働時間も長くなるだろう。 その場合、後者の方が残業代なども含めて給与が高くなるだろう。 結局のところ、プログラマが作りだす価値を定量的に評価できないのが問題だとは思うけど、 そこを解決する術が正直わからない。
837 名前:nobodyさん [2010/02/04(木) 22:53:36 ID:G38u6Z+m] プログラマーって本当に労働者なのか? blog.livedoor.jp/dankogai/archives/50766218.html 例えば、「コード1行につき10円」という取り決めがあったとする。 そしてプログラムの中に要素数1000からなる配列を初期化するルーチンが必要だったとする。 1万10円 40円 10円
838 名前:nobodyさん mailto:sage [2010/02/04(木) 23:29:31 ID:???] >>832 VPSスレじゃないからアレだけど詳しく >>835 > prgmr.com/xen/ やすっ $6は128Mメモリだから無理だけど、512MBなら$12か、これは試してみるかw >>834 「金くれ」はたしかオープンソースじゃなかったか?githubにあった気がする(といったもscaffoldみたいなソースだが)
839 名前:nobodyさん mailto:sage [2010/02/04(木) 23:34:40 ID:???] >833 ダウト。PHPでも設定は必要。 Rails だってあらかじめ設定しておけばFTPなりなんなりでアップロードすれば使える。 このご時世でFTPなんでありえんと思うが。
840 名前:nobodyさん mailto:sage [2010/02/05(金) 00:50:50 ID:???] WordpressがRails製だったら、こぞってサポートされるだろうよ
841 名前:nobodyさん mailto:sage [2010/02/05(金) 05:00:34 ID:???] >>837 実際メインテナンスを依頼されてソースを見たら ループじゃなくて数行x1000回(一部パラメータ値だけ変えて)繰り返してあるのを見たことがある
842 名前:nobodyさん mailto:sage [2010/02/05(金) 05:16:05 ID:???] >>839 いやいや、そういうことじゃないよね 実際問題railsアプリをそのままあげて動かせる共用サーバがどの位あるんだって話で。無いに等しいよね。
843 名前:nobodyさん mailto:sage [2010/02/05(金) 07:32:33 ID:???] VPSなら余裕じゃん 最近は安いしひもじい学生でも何とかなるだろ どんだけ貧乏なんだ
844 名前:nobodyさん mailto:sage [2010/02/05(金) 08:58:38 ID:???] >>843 俺は仕事とプライベート含めてむしろ大量に借りてる。でもそんな話をしてるんじゃない。 railsの実行環境がPHPに比べれば敷居が高いことがネックになり続けてて、それはrailsにとって不幸じゃない?ってことが言いたい。 VPSなら可能ってそりゃ当たり前だよ。でも世間でPHPのシェアを支えてる一部の層はrootを持ってサーバー管理などできやしない。 彼らはアプリ開発はできてもサーバーの運用知識はない。 railsの欠点はサーバ管理技術が要求されることが多すぎると思うんだ。 cakePHPなんてサーバーの知識必要ないからWebアプリ層しかわからない開発者でもさくら共用あたりで手軽に動かしてるよね。 それこそFTPで上げるだけで動く。差は歴然。
845 名前:nobodyさん mailto:sage [2010/02/05(金) 09:32:55 ID:???] う〜ん結局何が言いたいのかよく分からん。 個人的にそういう底辺層をRailsに取り込みたいとは全く思わない。 Railsの開発者は現状でもやる気満々だし、自分も満足してるし。 初心者でも誰でも使える、みたいな触れ込みで宣伝されるのが一番嫌だな
846 名前:nobodyさん mailto:sage [2010/02/05(金) 09:34:39 ID:???] >842 日本には無いねー。 海外だといくつかあるよ。 www.railshosting.org/ heroku.com/ 番外としては www.radiantmachine.com/ が RadiantCMS のホスティングをしてるな。
847 名前:nobodyさん mailto:sage [2010/02/05(金) 09:35:32 ID:???] >845 同意。
848 名前:nobodyさん mailto:sage [2010/02/05(金) 15:37:40 ID:???] >>846 EngineYardも忘れないで。
849 名前:nobodyさん mailto:sage [2010/02/05(金) 16:26:30 ID:???] railsの運用は現実的じゃないと思うけどな。 一応、php見たいに使えるよというだけで。 だから、rails案件からjavaへの移行が多い。
850 名前:nobodyさん mailto:sage [2010/02/05(金) 17:22:42 ID:???] 一応初心者ですが UbuntuServerを利用してRubyの野良ビルドからApacheでRails動かせるまで 構築してみました。 自分なりの結論だと、はっきり言って不親切というかgemが凶悪すぎたりして 運用が現実的じゃないとまでは言わないまでも、フレームワークと名乗る以上 運用までのプロセスをもう少し簡便にする努力は必要だと思います。
851 名前:nobodyさん mailto:sage [2010/02/05(金) 17:52:33 ID:???] 具体的に何が不満なんだよ
852 名前:nobodyさん mailto:sage [2010/02/05(金) 18:57:44 ID:???] >>849 え?え? なんか前後の文がつながってないような… railsからPHPへの移行が多いっていうならわかるけど。
853 名前:nobodyさん mailto:sage [2010/02/05(金) 19:08:14 ID:???] >>845 >>844 は初心者ということをお忘れなく
854 名前:nobodyさん mailto:sage [2010/02/05(金) 19:09:32 ID:???] >>850 楽なフレームワークが欲しくて PHPやPerlが嫌なら RubyじゃなくてPythonの方がお薦め
855 名前:nobodyさん mailto:sage [2010/02/05(金) 20:19:04 ID:???] ど・・・Djangoは日本語ドキュメントがほとんど無いので二の足 ほんとはRubyよりPythonのほうがすきなんだけど
856 名前:nobodyさん [2010/02/05(金) 20:38:33 ID:5PrgsIzR] Riding Rails: Rails 3.0: Beta release weblog.rubyonrails.org/2010/2/5/rails-3-0-beta-release Twitter / DHH: Rails 3.0 has gone beta: h ... twitter.com/dhh/status/8661675174
857 名前:nobodyさん mailto:sage [2010/02/05(金) 20:43:39 ID:???] 今度は本当だね。
858 名前:nobodyさん mailto:sage [2010/02/05(金) 20:51:09 ID:???] 雑魚は放っておいて先へ進もう
859 名前:nobodyさん [2010/02/05(金) 21:39:50 ID:5PrgsIzR] Rails 3 Beta is Out ? A Retrospective | Engine Yard Blog www.engineyard.com/blog/2010/rails-3-beta-is-out-a-retrospective/
860 名前:nobodyさん mailto:sage [2010/02/05(金) 21:42:03 ID:???] なんで ― が ? に化けてるんだよ。
861 名前:nobodyさん [2010/02/05(金) 21:43:56 ID:5PrgsIzR] Rails 3.0 Beta/Prerelease Available Now and How To Install It www.rubyinside.com/how-to-install-rails-3-0-prerelease-beta-2955.html
862 名前:nobodyさん [2010/02/05(金) 22:47:51 ID:5PrgsIzR] The Pragmatic Bookshelf | ChangesInRails30 www.pragprog.com/wikis/wiki/ChangesInRails30 Manning: Rails 3 in Action www.manning.com/katz/
863 名前:nobodyさん mailto:sage [2010/02/05(金) 23:33:51 ID:???] このスレの人は排他的だなー Railsを使う人が増えるのは素晴らしいことですよ web上の情報や書籍も増えるし開発だってもっと進む 目玉の数は多ければ多いほどいいんです 底辺も含めて使う人が増えれば増えるほどその言語/FWの環境が良くなるということは 昔のPerlや今のPHP、そして海外限定でPythonが証明していませんか?
864 名前:nobodyさん [2010/02/06(土) 00:15:42 ID:sFPKz/Gl] Hello Rails 3 World mentalized.net/journal/2010/02/05/hello_rails_3_world/
865 名前:nobodyさん mailto:sage [2010/02/06(土) 02:45:14 ID:???] まあ日本はガラパコス島だしな。世界の流れに取り残されまくり。 世界ではphp5+mysqlが主流なのに、php4+postgresだったりするし。いつも周回遅れ。
866 名前:nobodyさん [2010/02/06(土) 02:53:40 ID:YL0PbaBD] 質問です 最近railsの勉強を始めました。手始めに Ruby のブログを 10 分で作成 netbeans.org/kb/docs/ruby/rapid-ruby-weblog_ja.html?print=yes に挑戦しているのですが、ユニットテストでつまずいています。 rakeのdb:test:prepareを実行すると rake aborted! Task not supported by 'jdbcmysql' というメッセージがでて、エラーになってしまいます。 環境はNetbean6.8 rails2.3.4 Jruby1.4 MySQL5.1.42 です 解決策をご存知の方がいらっしゃいましたら、教えてください。 もうすぐ仕事で使うので、できればTDDをやりたいのですが、困ってます。、
867 名前:nobodyさん [2010/02/06(土) 03:04:04 ID:WHjoDDD7] >個人的にそういう底辺層をRailsに取り込みたいとは全く思わない。 これは酷い 君が誰だが知らないがたとえDHHだったとしても賛同できない発言だな そもそもRailsってwebアプリケーション・フレームワークだろ アプリ層以外のところにエンジニアが気をとられすぎてる現状は改善されるべき
868 名前:nobodyさん [2010/02/06(土) 03:25:02 ID:sFPKz/Gl] ruby\rails\hello>rails generate controller hello ruby/lib/ruby/gems/1.8/gems/railties-3.0.0.beta/bin/rails:2:in `exec' : Exec format error - ruby/rails/hello/script/rails (Errno::ENOEXEC) from ruby/lib/ruby/gems/1.8/gems/railties-3.0.0.beta/bin/rail s:2 from ruby/bin/rails:19:in `load' from ruby/bin/rails:19
869 名前:nobodyさん mailto:sage [2010/02/06(土) 03:27:48 ID:???] 底辺層がRails使ってくれないとRails案件が増えないんだよなあ 増えないどころか周りに合わせてPHPなんぞやらされたら死にたくなるよ
870 名前:nobodyさん [2010/02/06(土) 05:32:26 ID:WcJ7lKTj] 5行でrails3 $ rails example $ cd example $ ruby script/rails generate scaffold todo title:string body:text done:boolean due:datetime $ rake db:migrate $ ruby script/rails server localhost:3000/todos/
871 名前:nobodyさん mailto:sage [2010/02/06(土) 06:07:43 ID:???] >>866 10分で出来なかった事実を重く受け止めろ m9
872 名前:nobodyさん mailto:sage [2010/02/06(土) 06:11:06 ID:???] >>855 Railsも日本語の「まともなドキュメント」は少ないぞ
873 名前:nobodyさん mailto:sage [2010/02/06(土) 09:26:17 ID:???] >>866 jdbcmysqlアダプターで一部の操作が未サポートだって言われてる。 rakeを-t付きで実行して、どのタスクが未サポートか確認。
874 名前:nobodyさん [2010/02/06(土) 09:42:28 ID:sFPKz/Gl] About your application’s environmentRuby version 1.8.7 (i386-mswin32) RubyGems version 1.3.5 Rack version 1.1 Rails version 3.0.0.beta Active Record version 3.0.0.beta Action Pack version 3.0.0.beta Active Resource version 3.0.0.beta Action Mailer version 3.0.0.beta Active Support version 3.0.0.beta Middleware ActionDispatch::Static Rack::Lock Rack::Runtime Rails::Rack::Logger ActionDispatch::ShowExceptions ActionDispatch::Callbacks ActionDispatch::Cookies ActionDispatch::Session::CookieStore ActionDispatch::Flash ActionDispatch::ParamsParser Rack::MethodOverride ActionDispatch::Head ActiveRecord::ConnectionAdapters::ConnectionManagement ActiveRecord::QueryCache
875 名前:nobodyさん [2010/02/06(土) 09:43:44 ID:sFPKz/Gl] About your application’s environment Ruby version 1.8.7 (i386-mswin32) RubyGems version 1.3.5 Rack version 1.1 Rails version 3.0.0.beta Active Record version 3.0.0.beta Action Pack version 3.0.0.beta Active Resource version 3.0.0.beta Action Mailer version 3.0.0.beta Active Support version 3.0.0.beta Middleware ActionDispatch::Static Rack::Lock Rack::Runtime Rails::Rack::Logger ActionDispatch::ShowExceptions ActionDispatch::Callbacks ActionDispatch::Cookies ActionDispatch::Session::CookieStore ActionDispatch::Flash ActionDispatch::ParamsParser Rack::MethodOverride ActionDispatch::Head ActiveRecord::ConnectionAdapters::ConnectionManagement ActiveRecord::QueryCache
876 名前:nobodyさん mailto:sage [2010/02/06(土) 13:34:13 ID:???] gem bundler でgemの管理は楽になるのかなー。 今はcomfig.gemで管理してもgemがうまく動かなかったりして 結局pluginにして入れる事も多いので。
877 名前:nobodyさん mailto:sage [2010/02/06(土) 15:03:10 ID:???] Zed Shawって最近何やってんの?
878 名前:nobodyさん mailto:sage [2010/02/06(土) 15:30:41 ID:???] >>876 今はgem bundleというgemのサブコマンドではなく、独立したbundleという コマンドになってる。 0.9以降でそれまでとだいぶ変わったな。
879 名前:866 [2010/02/06(土) 15:39:36 ID:YL0PbaBD] >>871 10分どころか10日も厳しい >>873 まだコマンドプロンプトからの実行ができていないのですが rakeのタスク一覧にはdb:test:prepareがあります。 いろいろ調べても、db:test:prepareはさらっと流されてるので できないほうが珍しいのかな。 最初のソースはグダグダになるのが目に見えているので テスト駆動にしといて後で直したいんですけどねぇ
880 名前:nobodyさん mailto:sage [2010/02/06(土) 17:07:11 ID:???] jrubyをやめるのが一番簡単なんじゃないかねえ。
881 名前:nobodyさん mailto:sage [2010/02/06(土) 17:13:43 ID:???] とりあえず、 1. config/database.yml に設定を書く。 2. mysqlでアクセスするユーザーを作っておく。(grant) 3. 開発用DBを作る。rake db:create 4. テスト用DBを作る。 rake db:create RAILS_ENV=test db:test:prepareはそのあと。 mysql の前に sqlite3 でやったほうが楽だと思うけど、jrubyだとドライバないのかね。
882 名前:nobodyさん mailto:sage [2010/02/06(土) 17:16:34 ID:???] netbeansの公式ドキュメントなのか、それ。 ちゃんと動作確認しながら書かれたものなんだろうか。
883 名前:nobodyさん mailto:sage [2010/02/06(土) 18:20:25 ID:???] jrubyとか敷居高すぎだろ常考
884 名前:866 [2010/02/06(土) 18:50:43 ID:O1uZpKfZ] >>880-883 レスありがとうございます 実は rake db:create rake db:create RAILS_ENV=test も上手く言ってないです。エラーは出ないけどもDBも作成されて無いです。 ただ、Rubyのブログを10分で〜のページに、そういう場合は 「サービス」ウィンドウで、MySQL サーバーのノードを右クリックし、「データベースを作成」 と記述してあったので 手動で作成しています。 jruby、mysqlはnetbeansのデフォルトなので、そのあたりは触らないほうが 余計なリスクを背負い込まなくてすむと思ったんですけどね とりあえず mysql⇒sqllite3 jruby⇒ruby でそれぞれ実験して 問題の切り分けをしてみたいと思います。
885 名前:nobodyさん mailto:sage [2010/02/06(土) 19:28:29 ID:???] jruby やるならgrailsやったほうがいいんじゃない?
886 名前:nobodyさん mailto:sage [2010/02/06(土) 20:13:44 ID:???] 生rubyが好き。生がいい
887 名前:nobodyさん mailto:sage [2010/02/06(土) 20:41:12 ID:???] >>884 最近JRubyで動作試したことあるけど、jdbcmysqlだとrake db:createとかが上手く動かない 必要ない限りJRubyは選ばない方が無難
888 名前:nobodyさん mailto:sage [2010/02/06(土) 20:44:13 ID:???] db:create は初登場時から、全アダプタで対応しているわけではないって主張してたしなー。
889 名前:nobodyさん [2010/02/07(日) 03:39:00 ID:lH6tE8FW] Looking for a few beta users of our Ruby 1.8.7 & Ruby 1.9 (& Rails 3) stack. Drop beta@heroku.com an email. Feedback required. twitter.com/heroku/status/8649329782
890 名前:nobodyさん [2010/02/07(日) 04:07:15 ID:lH6tE8FW] Rails 3.0 Beta の Release Notesを読んでみる blog.livedoor.jp/maru_tak/archives/50808747.html Rails3 リリースノート全文和訳 (ただし適当) d.hatena.ne.jp/gom68/20100206/1265469879 Rails 3.0 リリースノート和訳 - 前編 d.hatena.ne.jp/willnet/20100206/1265467594
891 名前:nobodyさん mailto:sage [2010/02/07(日) 08:42:26 ID:???] Rails3のメリットは何?って聞かれたらなんて答えますか。 多分これから各所で聞かれるだろうから想定回答を用意しておきたい
892 名前:nobodyさん mailto:sage [2010/02/07(日) 08:55:11 ID:???] >>843-845 確かに鯖管理が面倒というのはあるね。 フレームワークとは違うけどwordpressとかphpbbの作者はスクリプトの普及のため その辺はものすごく意識しているみたい。 要するにレン鯖で動くようにすることに執念を燃やしている。 WordPressに見るオープンソースWebアプリに向いた設計とは - p0t docs.komagata.org/2815 phpはmod_php動作はともかく、一旦普及してデフォで採用されているのがデカイんだろうなー mod_php相当のpassengerはいいんだけど、いまいち普及してないよね・・・。 海外だとDreamhostあたりは入ってたと記憶 >>846 のherokuみたいにデプロイ簡単で、managedなサーバーはよいね。もう少し安ければいいけどw ただ、無粋なので言うのやめようかとおもったけど、 動かそうと思えば、xreaとかcoreserverでCGI駆動でも動かせるよ? どうせサービス作っても流行るかどうかはわからんのだから、人少ないうちはCGI駆動でも問題ないよ!
893 名前:nobodyさん [2010/02/07(日) 10:05:09 ID:lH6tE8FW] www.google.com/search?hl=en&safe=off&tbo=1&num=100&q=rails3&tbs=qdr:d&ei=gRFuS4WmCsqIkAWX9J3UBw&sa=X&oi=tool&resnum=3&ct=tlink&ved=0CB4QpwU
894 名前:nobodyさん mailto:sage [2010/02/07(日) 15:47:44 ID:???] cgiとかみんな重くて不幸に成るから辞めてくれw さくらのphpみたいにrubyも上位サービス契約しないと使えない様にされるだけだ。 まともに出来ないレベルで仕事に仕様というのは無茶だな。 そんなレベルで金受け取って仕事される客も困るだろうw
895 名前:866 [2010/02/07(日) 20:54:16 ID:AwzzZZa9] jrubyをrubyに変えたら上手くいきました。 ただ、MySQL5.1も問題ありみたいですね。とりあえず ここを参考にして、エラーは回避しました。 d.hatena.ne.jp/kusakari/20091202/1259683140 SUNでまとめときゃ大丈夫と思ったのが甘かったみたいです。 それともwindowsが合わないのかな。 レスくれた方々には感謝してます。
896 名前:nobodyさん mailto:sage [2010/02/07(日) 21:34:57 ID:???] あんま変わったことしない方がいいよ。悪く言えば寄せ集めなんだから Google App Engine とかもあったけど、「○○で動いた」みたいな報告は、 ごく一部の機能を動かしただけで、実際の開発には耐えられないんじゃないだろうか。
897 名前:nobodyさん [2010/02/08(月) 13:58:49 ID:UWYpis5j] www.flickr.com/photos/46457493@N00/sets/72157623251011769/show/ How to use both Rails and Sinatra in the same application: bit.ly/9nGcR2 -- love how easy this is! twitter.com/dhh/status/8771056696
898 名前:nobodyさん mailto:sage [2010/02/08(月) 14:51:50 ID:???] jrubyとrorはサン純正でもないと思うが。 サン純正でまとめるならちゃんとjavaで組んだほうがいい。 時代はoracle enterprise linux + oracle weblogic application server + oracle databaseかもしれないが。
899 名前:nobodyさん mailto:sage [2010/02/08(月) 19:43:14 ID:???] rails3って2系とあんま変わらないらしいね。 一部の機能がモジュール化されて取替え可能になるだけか
900 名前:nobodyさん mailto:sage [2010/02/08(月) 20:05:25 ID:???] GWT
901 名前:nobodyさん mailto:sage [2010/02/08(月) 22:59:49 ID:???] jpmobileはRails3に対応してくれるんだろうか
902 名前:nobodyさん mailto:sage [2010/02/08(月) 23:23:01 ID:???] 先月に続き、今月またjpmobile会議があるっぽいから請うご期待。
903 名前:nobodyさん [2010/02/10(水) 06:22:01 ID:F6Q2dOp+] Ruby on Rails によるシステム開発事例集 - 株式会社オイアクス ttp://www.oiax.co.jp/cases
904 名前:nobodyさん [2010/02/10(水) 13:09:43 ID:L494lCPs] Twilog - Twitterのつぶやきをブログ形式で保存 twilog.org/ ひとりで作るネットサービス: ただしイケメンに限……らない! ネットならフリーターでも生活できる――ロプロスさん bizmakoto.jp/bizid/articles/1002/10/news032_2.html 「今振り返ると勉強してよかったです。これから作るWebサービスもRubyで作ります。 やっぱり純粋なオブジェクト指向がすばらしいというか、 PHPで数行かかるところも1行で書けてしまったり、かゆいところに手が届く言語ですね」。 「よく言われることですが」と前置きしつつ 「やっぱりRubyは書いていて楽しい」という。
905 名前:nobodyさん mailto:sage [2010/02/11(木) 08:39:51 ID:???] Rails事例ではないかもしれんが、参考になるな。 しかし、開発環境がRDEの男の人って・・・
906 名前:nobodyさん mailto:sage [2010/02/11(木) 11:54:04 ID:???] sakuraで15000pv/日のサイト動いてるよん
907 名前:nobodyさん [2010/02/11(木) 12:56:06 ID:d9Kyh7+c] 自社サイトのPVを計算してみたら、119,932pv/日だった(1月分)。 Webサーバ1台、DBサーバ1台。 それぞれ専用サーバで、メモリは4GB。CPUはCore2DuoT8100。サーバ1台あたり月額14,700円 Apache + mongrel + PostgreSQL8.3。 Rubyのバージョンは1.8.7。 稼動年数は4年くらい。
908 名前:nobodyさん mailto:sage [2010/02/11(木) 14:17:14 ID:???] 10万pv/月ベースは個人で作っても結構簡単に達成できるなぁ。 日ベース常時1万に乗っけるのが難しい。 自分のサイトはなぜか休日にアクセス数激減してしまう パフォーマンス意識しなきゃいけないほどのマンモスサイトを早く作りたい
909 名前:907 mailto:sage [2010/02/11(木) 15:10:07 ID:???] >>908 上のサイトはPCサイトのみのアクセス数なんだけど、やっぱり土日や祝日はアクセスが減るね。 休日も見てもらえるようなコンテンツを用意しないといけないんだろうけど、今はアイデアがない。 ちなみに、1日で約11万pvだから、月だと11*31=341万pv。 当初は、月10万まで行くのも苦労したんだけど、簡単にいけるもんなのか・・・
910 名前:nobodyさん mailto:sage [2010/02/11(木) 16:48:41 ID:???] スレ違い
911 名前:nobodyさん [2010/02/11(木) 16:56:25 ID:XTMQuQu/] ミニブログの Twitterのstats(統計)データ。 kaworu.jpn.org/kaworu/2008-01-16-2.php - 350,000を超えるユーザ。 - 秒間600リクエスト - 平均毎秒200-300コネクション。最大時は秒間800コネクション - MySQLは秒間2,400リクエストを処理する - 180のRailsインスタンスがある。MongrelのWebサーバを使っている。 - 1つのMySQLサーバ(1つの大きな 8コアのサーバ)と1つのスレーブ。スレーブは、統計とレポートのための読み込み専用(リードオンリー)。 - 雑用処理をするための30+のプロセス - 8台のSun X4100s - Railsでのリクエストの処理時間は200 msec - データベースにかかる時間の平均は、50-100 msec - 16GBの memcached
912 名前:nobodyさん [2010/02/11(木) 17:09:17 ID:XTMQuQu/] RORのままアーキテクチャの変更で10000%高速化したとな。 ttp://b.hatena.ne.jp/entry/highscalability.com/scaling-twitter-making-twitter-10000-percent-faster
913 名前:nobodyさん mailto:sage [2010/02/11(木) 18:00:46 ID:???] DBを中心としたデータアクセス周りは手を抜いて作るとバカみたいに遅くなるからな ツイッターのエンジニアもそのあたりの失敗を認めてたような ここまで使われると思ってなかったんだろうけど
914 名前:nobodyさん mailto:sage [2010/02/11(木) 19:27:35 ID:???] >>904 の主は2chねらっぽい K氏と一緒に稼ぐチンパン団 入団20日目 pc12.2ch.net/test/read.cgi/affiliate/1262801285/ スレタイトルのチンパン団はインタビューで小一時間説明したのに華麗にスルーされたとかw
915 名前:nobodyさん mailto:sage [2010/02/12(金) 00:23:36 ID:???] railsでkeyvalue型のDBって使えないの?
916 名前:nobodyさん [2010/02/12(金) 06:49:51 ID:GlKVK1JQ] 単にActiveRecord使わなければいいだけ というか今もmemcachedとか普通に使われてないか?
917 名前:nobodyさん mailto:sage [2010/02/12(金) 08:49:26 ID:???] TokyoTyrant、Roma、Kumofsなどなど好きなの使えばという感じだが。
918 名前:nobodyさん mailto:sage [2010/02/12(金) 09:32:46 ID:???] URL helper関数をRails Consoleから確認することはできますか? StoryモデルとStoriesコントロールがあったとして、 >stories_path (/stories を期待している) としても、そんなメソッドはないと言われてしまいます。
919 名前:nobodyさん mailto:sage [2010/02/12(金) 10:47:03 ID:???] UrlHelperというのは別途存在するので確認だけど、 map.resourcesで作られるURLを表すメソッドだよね? ActionController::Routing::Routes.install_helpers して helper.stories_path かなー と思ったんだけど、違った。 認識されるURLパターンを見るだけなら rake routes でいいんだけど。
920 名前:nobodyさん mailto:sage [2010/02/12(金) 12:44:06 ID:???] >>919 レスありがとうございます。 はい、map.resourcesで作られる4つの関数です。 結局、protectedメソッドらしく確認できないっぽいです。
921 名前:nobodyさん mailto:sage [2010/02/13(土) 00:53:22 ID:???] paperclipで画像登録する時、ファイル単位じゃなくてフォルダ選択して中身を一括登録ってできる?
922 名前:nobodyさん mailto:sage [2010/02/13(土) 01:02:56 ID:???] ブラウザの<input type="file">に、ディレクトリを指定すると その中身をごっそり送るような仕組みが出来ない限り無理じゃないか?
923 名前:921 mailto:sage [2010/02/13(土) 01:09:26 ID:???] >>922 昔作ったやつでフォルダ一括って出来たんだけど、 確かDBにバイナリで格納してたから重かった気がした。 最近paperclipって知ったからコレは!って思ったんだが… 会社行ったら前どうやって作ったのか確認してみます。
924 名前:nobodyさん mailto:sage [2010/02/13(土) 01:39:55 ID:???] フォルダ一括ってブラウザにそんな機能あったんかw
925 名前:nobodyさん mailto:sage [2010/02/13(土) 11:03:58 ID:???] 「一括アップロード jquery」とか「一括アップロード JavaScript」とかぐぐればいろいろ出てくるけど、 フォルダ一括はそもそもブラウザに機能ないから、何か工夫しないといけないはず。 ↓フォルダは無理だが複数一括ならこんなのとか MOONGIFT: ≫ 華麗にアップロード「SWFUpload」:オープンソースを毎日紹介 www.moongift.jp/2007/07/swfupload/ って公式サイト死んでるがな・・・ あとはzipで圧縮したのをアップロードして、サーバー側で展開とか。一手間増えるが
926 名前:nobodyさん mailto:sage [2010/02/14(日) 00:55:54 ID:???] なるほど、JavaScriptだと、1個ずつ選択してストックしておくしかないけど、 Flash(ActionScript)を使えば一度に複数選択できるのか。
927 名前:nobodyさん [2010/02/14(日) 13:54:20 ID:6lVOAOxG] どなたか教えてください。 link_to_remoteを使って「ほげ」をクリックすることで"hoge"の内容が 書き変わるようにしています。 <%= link_to_remote 'ほげ', :update => "hoge", :url => {:controller => 'foo', :action => 'index'} %> <div id="hoge"></div> これをクリックとかの能動的な操作を必要とせずに、画面の初期表示段階で {:controller => 'foo', :action => 'index'}を実行させるようにしたいです。 何か良い方法はありませんか? よろしくお願い致します。
928 名前:nobodyさん mailto:sage [2010/02/14(日) 16:10:17 ID:???] >>918 include ActionController::UrlWriter
929 名前:nobodyさん mailto:sage [2010/02/14(日) 16:24:39 ID:???] >>927 function foo() { <%= remote_function(オプション) %> } document.observe('dom:loaded', foo) かな
930 名前:nobodyさん [2010/02/14(日) 17:21:58 ID:6lVOAOxG] >>929 ありがとうございます。 おかげさまで、うまく実装できました。 当方、jQueryを使っておりますので以下のようになりました。 jQueryでdocument.observe('dom:loaded', foo)に相当するものを探すのに 時間が掛かってしまいました。 <%= link_to_remote 'ほげ', :update => "hoge", :url => {:controller => 'foo', :action => 'index'} %> <div id="hoge"> <script type="text/javascript"> function foo() { <%= remote_function(:update => "user_week_block", :url => {:controller => 'user_week', :action => 'index'}) %> } $(document).ready(foo) </script> </div>
931 名前:nobodyさん mailto:sage [2010/02/14(日) 19:00:42 ID:???] いやprototype.js使えよrailsなんだから…
932 名前:nobodyさん mailto:sage [2010/02/14(日) 19:12:56 ID:???] >>931 まあ、ありでしょ。jQueryもメリットある。 remote_function 使うんだからPrototypeもロードしてるはずだけど。
933 名前:nobodyさん mailto:sage [2010/02/14(日) 19:13:48 ID:???] jRailsつかえばいいのでは
934 名前:nobodyさん mailto:sage [2010/02/14(日) 19:17:34 ID:???] >>930 なんかコントローラ名とか漏れてるぞw week blockって
935 名前:nobodyさん mailto:sage [2010/02/14(日) 19:17:56 ID:???] よほどUIに凝ってるサイトでもなければjquery使うメリットなんて無いと思うぞ
936 名前:nobodyさん mailto:sage [2010/02/14(日) 20:31:43 ID:???] web-app-themeをうまいこと使う方法ありませんか? タグにいちいち :class => "label" ってやるのは DRY じゃないと思い alias_method_chain で FormHelper のメソッドをオーバーライドしようと label メソッドだけは上書きしてみたんですが これを、text_field やら form_for やら同じようにやってくのは これまたDRYじゃないと思い、そこでいきづまりました :class が nil ならタグ名をクラスとする、スマートな方法があったら教えて下さい
937 名前:936 mailto:sage [2010/02/14(日) 21:36:39 ID:???] 自己レス groundworkなるプロジェクトテンプレートが参考になりそうですね Windows環境だと使えなさそうなので、Linux環境構築中…
938 名前:nobodyさん mailto:sage [2010/02/14(日) 22:56:50 ID:???] >>935 状況と好みによって選択だな。 jQuery は動的に DOM をバシバシいじるのは確かに楽だ。 配列や文字列なんかのユーティリティ系は Prototype のが素直に書けるよね。
939 名前:nobodyさん mailto:sage [2010/02/14(日) 23:01:35 ID:???] JS名前空間汚したくない人はjQuery好き
940 名前:nobodyさん mailto:sage [2010/02/14(日) 23:28:02 ID:???] 俺レベルになると生でjavascript書く方が楽だ
941 名前:nobodyさん mailto:sage [2010/02/14(日) 23:47:56 ID:???] おれもヘルパー使う気にならん 結局生で書くことになったりするから、混在させるのが嫌だなあ
942 名前:nobodyさん mailto:sage [2010/02/15(月) 07:55:38 ID:???] このスレ的にRails3のunobstrusive javascriptはよいもの?
943 名前:nobodyさん mailto:sage [2010/02/15(月) 07:58:05 ID:???] unobtrusive ですた… 他のフレームワークで結構採用されてんのね。
944 名前:nobodyさん mailto:sage [2010/02/15(月) 15:02:24 ID:???] railsって自動で負荷分散もしてくれるの? もしできるなら勉強してみるかな
945 名前:nobodyさん mailto:sage [2010/02/15(月) 15:31:18 ID:???] >>944 それは無理
946 名前:921 mailto:sage [2010/02/15(月) 16:20:19 ID:???] 前作ったの見てみたら、あらかじめ設定したフォルダに 入ってる複数の画像ファイルをjavascriptで持ってきてた。 1年以上前に書いたモノだから今見ると欠片もワカラン。 paperclip使って1ファイルづつ登録するしかないかな… 3000ファイルくらいあるけど
947 名前:nobodyさん [2010/02/15(月) 18:42:58 ID:9Iqj2ojJ] Rails基礎文法最速マスター - cod.note d.hatena.ne.jp/codnote/20100214/1266132768
948 名前:nobodyさん mailto:sage [2010/02/15(月) 19:34:53 ID:???] >>947 なんという薄っぺらい内容・・・ 「続きは本で!」メソッドだな。
949 名前:nobodyさん mailto:sage [2010/02/15(月) 19:54:14 ID:???] 薄っぺらいっつーかどこかのヘルプを丸写ししただけじゃね 何で☆付いてんだろw
950 名前:nobodyさん mailto:sage [2010/02/15(月) 20:01:34 ID:???] Rails3っていつリリースされるんですか?
951 名前:nobodyさん mailto:sage [2010/02/15(月) 20:12:33 ID:???] >>950 βなら出てる。
952 名前:nobodyさん mailto:sage [2010/02/15(月) 20:15:15 ID:???] ソラ少年はべつにHead First Javaの翻訳者でも何でもないんだから 別にメソッドと呼ぶほどのものではなかろう。 あ、でもアフィは入ってくるのか。
953 名前:nobodyさん mailto:sage [2010/02/15(月) 20:16:06 ID:???] 自演キモ過ぎ
954 名前:nobodyさん mailto:sage [2010/02/15(月) 20:43:43 ID:???] >>951 ありがとうございます。まだβでしたか。 新サービスをRailsで作りたいのに3を待つか2で行っちゃうかでウズウズ…
955 名前:nobodyさん mailto:sage [2010/02/15(月) 20:50:13 ID:???] βはちょっと見ただけだが、 * モンキーパッチするなど、実装の深いところを触るのは避ける * プラグインは全滅するので使わない というレベルでとりあえず2.3.5で作りはじめておくくらいなら、大丈夫かも。
956 名前:nobodyさん mailto:sage [2010/02/15(月) 21:03:13 ID:???] 実運用するなら2.3.xがいいんじゃないだろうか たぶんそれなりに開発できるようになるには半年くらいかかるように思う リリースが大幅に遅れたプロジェクトは要注意。勉強なら平行してやればいいし
957 名前:nobodyさん mailto:sage [2010/02/16(火) 00:18:29 ID:???] Windows上でRuby1.9とした場合 サーバーはどれがいい(動く)の? Mongrel? LightTPD? thin?
958 名前:954 mailto:sage [2010/02/16(火) 00:47:56 ID:???] >>955 >>956 ありがとうございます。参考になりました。 とりあえず2.3.5で行くことにします。
959 名前:nobodyさん mailto:sage [2010/02/16(火) 04:43:08 ID:???] なんとかpid ってファイルを手動で消さないと起動しないことあるんだけど installの仕方間違えたのかな
960 名前:nobodyさん mailto:sage [2010/02/16(火) 14:33:15 ID:???] 検索、一覧っていう 簡単な流れの画面作ってんだけど 検索画面の入力チェックってcontrollerにもりもり書いていいの?
961 名前:nobodyさん [2010/02/16(火) 15:12:55 ID:vr/Y6Irj] modelへ
962 名前:nobodyさん mailto:sage [2010/02/16(火) 19:26:00 ID:???] >>960 検索ワードのことなら、俺ならコントローラに書く。 検索ワードの入力チェック的なこと、そんなにいらなさそう。 検索式の中に入れるならエスケープは必要だけど。
963 名前:nobodyさん mailto:sage [2010/02/16(火) 19:39:38 ID:???] エスケープはモデルでやるべきだろ
964 名前:960 mailto:sage [2010/02/16(火) 20:02:05 ID:???] >>962 検索ワードです。 >>963 プレースホルダ使ってるのでSQLInjectionなら大丈夫です。 ttp://gendosu.ddo.jp/redmine/projects/rails/wiki/モデルとは関係ない検索条件などのパラメータをviewとcontrollerでやりとりする とりあえずここみながらmodelに書いてみた。 controllerの方がもりもりいけるけど、汚い。 modelだと専用class用意すんのがちょっと面倒。 大抵の人はcontrollerなのかな。
965 名前:nobodyさん mailto:sage [2010/02/16(火) 20:40:30 ID:???] コントローラはあくまでオマケで、 script/console でモデルだけ操作して アプリすべての処理が簡単に行えるのが理想だと思ってる
966 名前:nobodyさん mailto:sage [2010/02/16(火) 21:17:26 ID:???] 四階層モデルですねわかります
967 名前:nobodyさん mailto:sage [2010/02/16(火) 23:27:40 ID:???] (´・ω・`)
968 名前:nobodyさん mailto:sage [2010/02/16(火) 23:33:25 ID:???] controllerとmodelの間にサービス層が欲しい。 ある程度以上の規模になったら絶対必要だと思うんだけど皆はどうしてるんだろう。 独自に層を挟むのはアリなのかな?
969 名前:nobodyさん mailto:sage [2010/02/17(水) 00:16:32 ID:???] presenter層について紹介。 kpumuk.info/ruby-on-rails/simplifying-your-ruby-on-rails-code/ これはrailsのブログでも紹介されていたよ。 weblog.rubyonrails.org/2009/10/22/community-highlights
970 名前:nobodyさん mailto:sage [2010/02/17(水) 00:17:30 ID:???] アリでしょ。 app/modelsの中に勝手にクラス作ればOK
971 名前:nobodyさん mailto:sage [2010/02/17(水) 00:31:26 ID:???] >>970 sample codeがみたい
972 名前:968 mailto:sage [2010/02/17(水) 00:36:13 ID:???] >>969 >>970 ありがとうございます。 >>969 こんなプラグインがあるんですね。参考になりました。 ただapp直下に新しいディレクトリ作るのは少し抵抗あります。。 >>970 独自に作る場合はmodels以下に作るべきでしょうか? 個人的には、サービス層はコントローラクラスに依存するからcontrollers以下に作った方がすっきりしそう。 例えばloginコントローラ内でabcモデルとxyzモデルを利用する処理がある場合、サービスクラスを保持するファイル名はlogin_serviseのようにコントローラ名に依存すると思います。 なのでcontrollers以下に入れた方が綺麗かなぁと。ほとんど好き嫌いの問題だけど。
973 名前:nobodyさん mailto:sage [2010/02/17(水) 01:07:35 ID:???] サービス層はコントローラじゃないんだからcontrollers以下に作るのはおかしいと思うけどね。 サービス層はサービス層用にディレクトリ作って、まとめたらいいんじゃないかな
974 名前:nobodyさん mailto:sage [2010/02/17(水) 12:50:45 ID:???] ごめん、ちょっとわかんなくなってきた。 Service / Model / Controller の役割を誰か例付きで解説して。
975 名前:nobodyさん [2010/02/18(木) 16:38:59 ID:I3xk6O8m] Wikipediaのダウンロードできるデータファイル一覧 www.mwsoft.jp/programming/munou/wikipedia_data_list.html
976 名前:nobodyさん mailto:sage [2010/02/18(木) 18:26:01 ID:???] >>969 これは、「層」というか、ControllerとViewに介在してシンプルにするパターン(って書いてあるけど)かなあ。 >>968 ,973,974 質問にもなるけどサービス層として切り出したいものって、 いわゆる「ビジネスロジック」ってやつかな、と思ってるんだけど合ってる? データに属していない処理(複数のモデルが関わっていて、どのモデルにも置きにくい)で、 Webにも依存しないので単独でも起動できるようなものを、 「サービス」としてまとめたいのかなと思った。 (Railsの)ControllerはWeb依存なのでView間の遷移とかデータをViewにパスするとかを専門でやる。 俺のイメージはこんなん。
977 名前:973 mailto:sage [2010/02/18(木) 23:36:13 ID:???] >>976 自分の言っているサービス層は、そういう意味だと思う。 モデルまたはサービス層はWebに依存しないようにして runnerやconsoleで動作確認しやすいように作ってる。 とりあえず、今はlib/services以下にサービス層を作って置いてる lib/services/sample_service.rbという感じ。 Services::SampleServiceという感じで名前が長くなるのがちょっと面倒だけど。 サービスを作る時の基準ってみんなどうしてるのかな。 自分は複数のモデルが絡むトランザクション処理とかだけサービスにまとめて、 単一のモデルで簡潔する処理は、そのモデル内に書いてる。
978 名前:nobodyさん mailto:sage [2010/02/19(金) 02:41:48 ID:???] libに置くのは最悪だろ アプリケーションから取り外して再利用できるコードを置く場所
979 名前:977 mailto:sage [2010/02/19(金) 02:48:31 ID:???] >>978 自動で読み込まれるところに置きたい モデルとは区別したいので、app/models以外に置きたい この2点で考えると、lib/serviceというディレクトリに置くのが手っ取り早いってだけで 今はそうしてる。 他にいい場所あったら教えて欲しい。 app/services以下に置く事にして、 environment.rbあたりにapp/services/*.rbをrequireする処理を書けばいいかな。
980 名前:nobodyさん mailto:sage [2010/02/19(金) 08:35:28 ID:???] そのへんのためかどうか知らないけど、Rails3ではRails.root/app/ の下の ディレクトリが全部load pathに含まれるようになる。
981 名前:nobodyさん mailto:sage [2010/02/19(金) 09:10:06 ID:???] そういうのはrorは弱いしな。 梅。
982 名前:nobodyさん mailto:sage [2010/02/19(金) 11:40:07 ID:???] >>979 environment.rb に # Add additional load paths for your own custom dirs # config.load_paths += %W( #{RAILS_ROOT}/extras ) っていう箇所があるからそうすればいいのでは。 config.load_paths += %W( #{RAILS_ROOT}/app/services )
983 名前:nobodyさん mailto:sage [2010/02/19(金) 12:05:30 ID:???] 埋める前にそろそろ次スレ他てようぜ
984 名前:nobodyさん [2010/02/19(金) 16:13:46 ID:WbFNhWFy] 【Ruby】Ruby on Rails Part9 pc11.2ch.net/test/read.cgi/php/1266563593/
985 名前:nobodyさん mailto:sage [2010/02/19(金) 23:08:27 ID:???] それじゃ埋め。
986 名前:nobodyさん mailto:sage [2010/02/20(土) 01:47:12 ID:???] 埋められまsrん。