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/
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 で開始すればいいのじゃないかと思うんですが どこに書いたらいいものか分かりません。