タグ

railsとactiverecordに関するstarsky5のブックマーク (10)

  • update_attribute とupdate_attribtues の違い - LukeSilvia’s diary

    以前に書いたコードを読んでいると、1カラムの値だけを変えるからといって、update_attribute メソッドを使っている部分があった。これはあまりよくない update_attribute とupdate_attribtues の違い 前者は1つのカラムの値を、後者は複数のカラムの値を更新できる。という違い以上に、「update_attribute メソッドはvalidation なしに更新、update_attributes メソッドはvalidation ありで更新」という違いがあります。 つまり、update_attribute 使うと、検証処理なしに、値が更新されてしまう。ソースを見ると、update_attribute の方は、save(false) を使って更新しているのが分かる。 activerecord/lib/active_record/base.rb at mas

    update_attribute とupdate_attribtues の違い - LukeSilvia’s diary
  • findよりfind_by_idでActiveRecord::RecordNotFoundを回避する - パンプキンスパイスラテ

    新しいブログをはじめました! ブログ名:筋肉カメレオン WordpressAWS、時々筋トレについて書いてます。 Railsでデータをfindする時、該当件数が0件の時は、ActiveRecord::RecordNotFoundな例外になってしまうので、 rescue ActiveRecord::RecordNotFoundで例外処理をしなくてはならない。 これがずっと面倒だなぁとおもってたら、なんとfind_by_idを使えば、nilが返るので user = User.find_by_id(params[:id]) unless user then # 0件のときの処理 endと使えるらしい!! これからは、find_by_*** を使います。。。 追記 http://blogs.yahoo.co.jp/killer2kmonday/16884102.html おっと、ココ見たら、fi

    findよりfind_by_idでActiveRecord::RecordNotFoundを回避する - パンプキンスパイスラテ
  • 第43回 Rails 3を支える名脇役たち その1 - Arel - | gihyo.jp

    はじめに Ruby on Railsの2年半ぶりのメジャーバージョンアップである3.0の正式リリースがいよいよ間近に迫ってきました。 Rails 3は、アプリケーション・レベルではRails 2.3との互換性をなるべく保ちながらも、メジャーバージョンアップだけあってフレームワーク自体は隅々にまで徹底的なリファクタリングが施されて更なる洗練を遂げています。結果として、Rails 3では融通の効かないフルスタック構造を捨ててすっきりとしたモジュール独立性が実現されているのですが、この際に、Merbとの合併の影響もあってか、いくつかの新たな外部ライブラリに依存する形になっているのも興味深いところです。 そこで稿では、あえてRails 3そのものではなく、このRails 3の大改造の舞台裏を支える裏方さんにスポットライトを当ててみたいと思います。 Arelによってパラダイムが大きく変わったAct

    第43回 Rails 3を支える名脇役たち その1 - Arel - | gihyo.jp
  • プロトタイピングに効くRoRのDB移行・変換機能 ― @IT

    今回はRoRでアジャイルプロトタイピングの実践編として、筆者が特に気に入っているデータベースのマイグレーション機能を紹介したいと思います。データベースのマイグレーションはプロトタイピングのみならず、それ以降のフェーズでも活用できる非常に有用な機能であると考えています。 マイグレーションとは何か? そもそもマイグレーションとは何でしょうか? マイグレーション、特にデータベースにおけるマイグレーションとは、新しい環境に移行する際、整合性を保持したまま移行を行うためのツールであるといえるかと思います。 RoRにおけるマイグレーション RoRにおけるマイグレーション機能はActiveRecord::Migrationとそれを利用するフロントエンドに当たるRakeによって実現されています。 RakeはRuby Make、つまり、Ruby版makeとでもいえるビルドツールですが、記述言語としてRuby

    プロトタイピングに効くRoRのDB移行・変換機能 ― @IT
  • ActiveRecordを使ったソースコードを読もう (1/4)- @IT

    第3回 ActiveRecordを使ったソースコードを読もう 倉貫 義人 松村 章弘 TIS株式会社 SonicGarden 2009/1/28 優れたプログラマはコードを書くのと同じくらい、コードを読みこなせなくてはならない。優れたコードを読むことで、自身のスキルも上達するのだ(編集部) これまでの2回の記事で、Railsアプリケーションの基的な構成と、テスティングフレームワークであるRSpecを使ったソースコードのコードリーディングを行ってきました。今回は、RailsのキモでもあるDBアクセス処理の部分を扱うActiveRecordを深く掘り下げてコードリーディングを行います。 ActiveRecordとは、まさしく同名の“Active Record”というDBアクセスに関するデザインパターンを実装したライブラリです。データベースのテーブルをクラスとしてビジネスロジックを持たせ、テー

  • Rails' Wiki - ActiveRecord

    転載元 http://funk.exblog.jp/m2005-02-01#2082044 vendor/activerecord/README Active Recordは、ビジネスオブジェクトとデータベーステーブルとを接続し、ロジックとデータをひとまとまりとして表現する永続的なドメインモデル(振る舞いとデータをカプセル化した、ドメインのオブジェクトモデル)を生成する。これは、Martin Fowlerによって記述された同名のO/Rマッピング(ORM)パターンの実装である: 「データベースのテーブルやビューの列をラップし、データベースアクセスをカプセル化し、ドメインロジックを追加するオブジェクト」 アソシエーション(関連付け)とインヘリタンス(継承)の欠如という大きな問題を取り除いたことが、Active Recordsのオリジナルパターンへの大きな貢献である。Active Recordは

  • O/Rマッピング技術の進化が皮肉にも助長している「えせMVC症候群」

    昨日の「Ruby on Railsの『えせMVC』の弊害」というエントリー。若干「釣り」の要素が含まれたタイトルが功を奏したのか、たくさんのフィードバックがいただけた。そんな中で見えて来たのは、この問題はRailsに限った話ではなく、業務用アプリケーションで使われているJavaや.Netの世界でもよく見られる問題だということ。 その「問題」とは、ActiveRecordに代表されるO/Rマッピングの技術の進化が、来のMVC(そしてオブジェクト指向そのもの)のメリットを無視した「えせMVC」な設計を助長している、という問題である。 ・MVCやオブジェクト指向を表面的にしか理解していないエンジニアが増えている(ここが根的な問題) ↓ ・SQLを自分で記述しなくて良いO/Rマッピングはとても魅力的(これはこれで別の問題を含んでいるが、このエントリーではあえて突っ込まない) ↓ ・O/Rマッピ

  • https://www.func09.com/wordpress/archives/716

  • Rubyist Magazine -RubyOnRails を使ってみる -第3回 ActiveRecord

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • Ruby on Rails - ActiveRecord - — ありえるえりあ

    方針 Rubyを知っている前提です(前回の勉強会の資料 http://dev.ariel-networks.com/articles/workshop/ruby/) RDBの基礎知識が前提です なるべく手を動かして目に見える形で説明を進めます Ruby on Rails(以下、Rails)全体は巨大なので、ActiveRecord(ORM層)に話を限定します(Web層は次回) Webから切り離してirb or コマンドラインでActiveRecordを使います

  • 1