|
ある ActiveRecord オブジェクトの内部状態が期待する値かどうかを検査するのがvalidation 機能です。例えば、ある変数(状態)が、空値、決まった範囲、特定の正規表現にマッチ、であるかどうかといった検査を定義します。定義するには、ActiveRecord::Base#validate を override します。validate_on_create や validate_on_update などに関しても同様です。 validate_on_create: オブジェクトが新規に作成された... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
どうせお前らはカラム名の日本語化は ActiveHeart を使っていて自分で使う分には快適なのだけど、久々に scaffold を使ってみると生成された view ではColumn#human_name → Base.human_attribute_name(@name) と基底クラスのが呼ばれて結局ローカライズされねー!と悔しい思いをしつつも、まあ generator でそこのテンプレだけ変えればいいか俺に任せろ!と書き直そうとするんだけど、テンプレつーか... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
1は、AR.find の引数だけを見てキャッシュのキーを作成しているため、with_scope と混ぜるな危険。解決策の1つは「キャッシュするレイヤーを select_xxx まで引き下げる」こと。そうすると find_by_sql まで対象に入るという嬉しい副作用もある。ただその場合、キャッシュの対象も同レイヤーにするとARオブジェクトでなく生の結果セットになると思うので、何か面倒な気もしてきた。う... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
iBATIS は多機能で Active Record パターンと比べるとメリットが色々ある。しかし、RailsのARフレームワークは名前こそARであるものの、同パターンは全体の2割程度の機能でしかないと言えるくらいのリッチなフレームワークであるため、iBATIS の恩恵は霞んでしまうようだ。以上より、セッションの結論は、残念ながら「それARで(ry」となってしまった。(※ 遅延評価だけは機能を追いき... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
|
1. 新しい Migration 定義ファイルを作成する % ruby script/generate migration my_new_migration 2. Migration の内容を定義する % vi db/migrate/1_my_new_migration.rb 3. Migration を実行する % rake migrate ● 例1(カラムの追加) 既存のテーブル(members)に新しいカラム(unitcode)を追加してみましょう。 psql# \d members Column | Type | Modifiers ----------+-----------------------------+----------- code | integer | name | character varying(32) | birthday | ... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
/ヽ /ヽ / ヽ / ヽ / ヽ__/ ヽ ┏┓ ┏━━┓ / \ .┏━┓ ┏┛┗┓┃┏┓┃ / \ / | .┃ ┃ ┗┓┏┛┃┗┛┃┏━| ... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
|
『 scopeについていろいろ。拡張の仕方などRails風の拡張が面白い 』 by twainy [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
Railsには Page, Action, Fragment という3段階のキャッシュ機能が備わっている。tDiaryを使っていても思うが、修正よりも参照の方が圧倒的に多いコンテンツで毎回cgiで同じコンテンツを吐くのは無駄だなぁ。でもキャッシュを自分で用意するのは面倒だし、フレームワークかWebサーバがやってくれたらなぁ。Railsはそんなかゆい所にも手が届く、Web開発界の万能戦艦ノーチラス号なんです... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
#<Favorite:0xb78c11c0 @attributes={"name"=>"味噌汁", "member_id"=>1, "id"=>1}> # 好物が参照される >> saki.favorite => #<Favorite:0xb78c11c0 @attributes={"name"=>"味噌汁", "member_id"=>1, "id"=>1}> # 好物テーブルにも反映されている (member_id も自動的に付与されている事に注目) >> Favorite.find(:all) => [#<Favorite:0xb78afb28 @attributes=... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
Webコンテンツで一覧表示時に「前のページ」「次のページ」といったリンクを作るのは結構面倒であるが、Rails には pagination というページ管理機能がある。ロジック(コントローラ)側では、テーブルのモデルを表すシンボル(必須)と表示条件等を引数に取りpaginate を呼び出すだけ。 # controller def list @pages, @items = paginate(:item, :per_page => 20, :order_by => 'itemcode') end 戻り値はページ管理... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
書式は find(...) の引数と同じです。名前は :find ですが、count, destroy, update 等々の操作にも影響します。以下のキーが指定可能です。 :conditions, :joins, :from, :offset, :limit, :readonly :create -- create 時の列の要素に影響を与えます (SET 節への自動付与) 書式は create(...) の引数と同じです。attributes の項目が指定可能です。 ● 例1: 基本的な使い方 Member.count # => SELECT COUNT(*) FROM members Member.find(1) ... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
Merb (Mongrel + Erb) は MVC ベースな Ruby の Web フレームワークである。簡単に言うと、軽量な ActionPack クローンである。Rails のテーマが「規約とDRY」ならば、Merbのテーマは「疑わしきものは入れない」であり、Rails の各機能を取り込みつつも、小さくて単純で簡単で軽量、そして高速であることを目指している。 [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
|
多分、ツッコミたい所が2点あるでしょう。まず、ひとーつ!(浜ちゃん)。流れから行くと今度は2つめの定義で当たる例を書きそうですが、敢えて狙いを外しました。これがお笑い用語で言う「スカシ」です。例えば、「おはスタ(2004/11/23)#おはおはカレンダー」でBerryz工房が芸暦10年を超える山ちゃん相手に見事に決めています。この魅力的なテーマに関して小一時間ほど解説した... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
LiteSpeed + LSAPI(ruby-dispatch) が生 Lighttpd と同程度であることに驚いた。(無菌状態での精密なベンチではないので全体的に10%程度の誤差はありえる) Apache2 の proxy は全般的にオーバーヘッドが少ないが、LiteSpeed は Mongrel 以外のサーバとはなぜか相性が悪い。(LiteSpeed proxy は Mongrel 一択で) WEBrickが思ったほど遅くなかった。(今回は逐次アクセスで測定したので、並行処理の場合はまた違う... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
1は、運用するパスに変更があった場合に(例えば "nksk" -> "nacky")、routes ファイルを修正する必要があるからだ。また、パスの情報が httpd.conf と routes.rb の両方にあるのがDRYでない。だが、変更があったら修正すればよい、と割り切れば、問題はない。 問題2 通常のページ遷移は問題ないが、画像ファイルを表示しようとすると"/nksk/images" へのアクセスとなり... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
週末に予定があるのでチケットも買ってなかったのだが、moro さんに召還されて0thDay(無料日)に参加。「ブースもあるから遊びに来なよ!」的なノリでつくばに誘い出され、いつの間にか「Rails勉強会・東京」の代表として「内外コミュニティ紹介」に連れ出されて行ったのも、今となってはいい思い出です。まぁ、年に1度のRuby祭だからいいよね。偉い人やお世話になった人達にも... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
|
この春からRailsを使うようになったんだけど、入門書は2.0に対応してないのに入門書のとおり gem install rails とかやると2.0.2が降ってくる罠があって、うまくいかないときにRailsのバージョンのせいなのか、認めたくない自分の若さ故の過ちのせいなのか分からず困ってます。Rails2.0対応なレシピ本は待ち望んでいた本なので期待大。 あとは、NetBeansとかAptanaとかのGUI開発環境につ... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
にインストールされている。この中で顔認識用パターンは haarcascade_frontalface_alt2.xml あたり。このファイルと画像ファイルから簡単に顔情報を認識することができる。もちろん、顔以外のパターンを利用することもできる。 ● Rubyで使う こんな楽しいものは Ruby から操作したくなるのが人情だけど、なんと dara ちゃんがRuby拡張ライブラリを作ってくれました!参考3 の dara ちゃんの... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
|
どうせお前らはカラム名の日本語化は ActiveHeart を使っていて自分で使う分には快適なのだけど、久々に scaffold を使ってみると生成された view ではColumn#human_name → Base.human_attribute_name(@name) と基底クラスのが呼ばれて結局ローカライズされねー!と悔しい思いをしつつも、まあ generator でそこのテンプレだけ変えればいいか俺に任せろ!と書き直そうとするんだけど、テンプレつーか... [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|
『 database.ymlのencoding:uft8が不要になった!テーブル作成時のDEFAULTCHARSET=utf8が不要になった! 』 by PoohKid [ 詳細 ] [ 関連 ] [ ニコニコ風 ]
|