[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 15:53 / Filesize : 279 KB / Number-of Response : 987
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【Ruby】Ruby on Rails Part8



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/

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%くらいの割合になるマジで
同じ会社で死ぬまで雇ってもらえるなら別だが
そんな保障はどこにもない







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<279KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef