タグ

activerecordに関するtakkkunのブックマーク (3)

  • ActiveRecordのDBコネクションの接続切れと再接続について。reconnectオプションは危険だなーとかも - odeの開発メモ日記

    ActiveRecordは基ずっと接続をはりっぱなしにします。 なので長時間接続をはりっぱなしにするため タイムアウト等で接続がきれると問題がでます。 MySQLDBの接続がきれるタイミング 状況別 Railsの場合 HTTPリクエストのあるたびに接続が切れてないかを確認します。切れてる場合は再接続するようになっているので問題なさそうです。 バッチ、デーモン等 ActiveRecordを使った場合はずっとつなぎっぱなしになるため、途中で接続が切れるとエラーになります。 reconnectオプションは危険 じゃあバッチ等の場合自動で再接続してくれればと思うと MySqlのクライアントライブラリレベルでリコネクトの概念がありました。 railsで使うにはdatabase.ymlに:reconnect = trueで指定できます。 が!! railsの実装ではデフォルトはOFFになっています

    ActiveRecordのDBコネクションの接続切れと再接続について。reconnectオプションは危険だなーとかも - odeの開発メモ日記
  • Kaminariの使い方 Rails3時代のpaginationの標準候補 - YomuKaku Memo

    Rails3時代のpaginationの標準に成り得るkaminariのインストールと設定の方法をまとめます。 Kaminariはamatsudaさんが作られたpaginationのためのgemです。 使用させていただいたところ、現在ひろく使用されているwill_paginateからこのkaminariに乗り換えてしまうのに充分な機能がある上、will_paginateと比較してシンプルなためにレンダリングのカスタマイズ等が容易に感じられました。 amatsudaさんありがとうございます。 以下、インストールからカスタマイズの方法までをまとめます。 Kaminariのインストール方法 Gemとしてインストールします。 単にgemとしてインストールするだけであれば、シェルで、 $ gem install kaminari のように入力します。 Rails 3で使用する場合は、Gemfileの

  • Rails 2.3.2のvalidates_uniqueness_ofの不具合について - 是非に及ばず

    Rails 2.3.2がリリースされたので、さっそく2.2.2からアップデートしてみた。 特に問題ないなと思っていたら、validates_uniqueness_ofでエラーが発生したので対処方法をメモ。 どんなエラーなのか Railsには重複をチェックするためのバリデーションとしてvalidates_uniqueness_ofが用意されている。 これを日語のようにマルチバイトな文字列を値とするカラムを指定すると、 SQLの部分でエラーとなるケースがある。 エラー再現コード -- app/models/profile.rb -- class Profile < ActiveRecord::Base validates_uniqueness_of :nickname end profile = Profile.new(:nickname => 'サンプルユーザ') profile.vali

    Rails 2.3.2のvalidates_uniqueness_ofの不具合について - 是非に及ばず
    takkkun
    takkkun 2009/04/08
    マルチバイトの文字が入っている列に対してこのバリデーションを行うと発生する不具合と, その対処
  • 1