タグ

ブックマーク / wota.jp (45)

  • [Rails]include_for plugin - ヽ( ・∀・)ノくまくまー(2007-10-11)

    ● [寝る子は][Rails] javascript_include_tag と stylesheet_link_tag が何年経っても覚えられない件

    tokada
    tokada 2007/11/26
    include_for
  • ヽ( ・∀・)ノくまくまー(2007-11-10) ActiveScaffold

    ● [Rails] ActiveScaffold プラグイン AjaxScaffold までは知ってたけど、これは知らなかった。凄いねこれ。スペジェネでやりたかったことが殆ど実装されているよ。あとは ViewProperty 周りの機能が足りないけど、今からスペジェネを頑張るよりもこっちにそれを入れ込む方が早そうだ。Rails1.2 だとスペジェネの動作が微妙な部分もあるし。てことで、Rails1.2〜の現代では、スペジェネでなくて ActiveScaffold を使うのがよいと思われ。テンションあがったので、一気に調べて舞波のスペジェネの部分(pp.288-295)を差し替えよう計画。検証や校正をする時間がないと思うので、誤字脱字、疑問点、些細な間違い、ActiveScaffold で知りたい事、に載せて欲しい内容等、何でもどんどんツッコミお願いします。 ● ActiveScaffo

    tokada
    tokada 2007/11/24
  • Rails勉強会@東京第24回(PofEAAの4つのORMパターンまとめ) - ヽ( ・∀・)ノくまくまー(2007-11-18)

    パターン名と実装名に同じ物が多くてややこしいので、P:パターン、I:実装とする。以下は(※1)、勉強会での話あるいは舞波の認識であるので実際と違っている可能もあり、それによって万が一あなたが被害をどーのーこーの(ry ActiveRecordパターン テーブルとクラスを1:1に対応させるパターン。勉強会参加者はAR(I)に当然馴染みがあるので省略。 DataMapperパターン AR(P)とDM(P)は凄く似ている。パターンとしての違いは、 ARのマッピングは1:1だが、DMは1:n (オブジェクトから見てテーブルをコンポジット可能) DMはスキーマ定義を持つ である。実装的には、AR(I)は機能2をマイグレーションとして持つため、マッピングが1:1であれば完全に同一だと言える。よって、以下のややこしい結論を得る。 AR(P)≠DM(P) であるが AR(I)≒DM(P) てことで、Dat

  • ヽ( ・∀・)ノくまくまー(2007-11-19) MySQL やめました

    どう見ても 4.1 → 5.0 で退化してます。ありがとうございました。というか、こんなこともできないのにPostgreSQLより速いとか言ってたのかよ。これじゃRDBというより、ただの主キーに紐付いたデータ(1階層)取るだけのストレージ、みたいなねぇ。RDBとしてはおもちゃだよ。てか、RDBを名乗っちゃだめだろ。 そもそも現在のほぼ全てのRDBMの実装はRelational Modelに準拠しておらず、結果セット(タプル)の見出しは集合ではなく配列になってしまっていて、それは数学的な根拠(メリット)が薄れてRMの最大の魅力とも言うべき閉包性を失うことになってるんだが、逆にメリットもあって、具体的には実装レベルでは速度向上や利便性なんだけど、そいう利点があるからこそ容認されているんであって、さらにその利便性(ここでは結果セットのドメイン名指定に"*"が使えること)を捨てるなんて閉包性が無駄

  • Prototype ユーザが 10 分で jQuery を使い出すスレ - ヽ( ・∀・)ノくまくまー(2007-10-07)

    ● [jQuery] Prototype ユーザが 10 分で jQuery を使い出すスレ さぁ、今夜もはじまりました、熊井ちゃん王国。それでは早速、熊井ちゃんに伝えたい jQuery の魅力 RANKIN Q! 渋谷の女性300人に聞いた jQuery の好きな所 TOP 10 名前空間の汚染が最小 簡潔明瞭なメソッド名 CSS3 + XPath ちっくアクセス メソッドに対する閉包性 (メソッドチェイン) ● 1. 名前空間の汚染が最小 Prototype では、DOM要素のID指定には $()、CSSセレクタ指定には $$() といったように、多くの関数が global に定義されている。しかし、jQuery で定義された global 変数は $ のみであり、上記の要素指定はどちらも $() で記述できる。(※ CSS 表記なのでIDの場合は'#'が必要) 正確に言えば、jQue

  • http://wota.jp/ac/?date=20070609

    tokada
    tokada 2007/06/11
  • ヽ( ・∀・)ノくまくまー(2007-03-18) - Rails勉強会@東京#16

    ● [Rails] Rails勉強会@東京#16 [前半: RSpec] 前半は RSpec にアンチ役として参加。 Test クラスに縛られない自由な感じはいい 3通りのデリミタ(スペース、アンダーバー、ドット)が混在してる and_return とか当に読みやすいのかと小一時間 アンダーバーの制約は主義でも体系でもなく、Ruby の言語的な制限(予約語: and, or, not) Rails に標準添付されれば敷居はさらに低くなる☆カナ 最新版では "specify" の後のラベルをテストコードから生成してくれるらしいよ Cool!! 将来の表記法を勝手に予想するスレ context "Maiha has gone" do target "Berryz" do setup do @berryz = Berryz.current end should {be kind_of(Berr

    tokada
    tokada 2007/03/25
  • ヽ( ・∀・)ノくまくまー(2005-07-13) 優しいRailsの育て方 キャッシュ機能(caching)

    ● キャッシュ機能(caching) Railsには Page, Action, Fragment という3段階のキャッシュ機能が備わっている。tDiaryを使っていても思うが、修正よりも参照の方が圧倒的に多いコンテンツで毎回cgiで同じコンテンツを吐くのは無駄だなぁ。でもキャッシュを自分で用意するのは面倒だし、フレームワークかWebサーバがやってくれたらなぁ。Railsはそんなかゆい所にも手が届く、Web開発界の万能戦艦ノーチラス号なんです。 Page: アクション(CGI)の出力を丸ごとHTMLファイルとして保存し、静的コンテンツとして利用 Action: Pageと同じく全体を保存するが、コンテンツを表示する前に ActionController で filter 操作可能 Fragment: アクション全体の出力でなく、テンプレート描画の一部分のみをキャッシュ可能 caching

    tokada
    tokada 2007/02/18
  • 第 6 回 Rails 勉強会@関西 - ヽ( ・∀・)ノくまくまー

    (*1) 表現は両者の相対性に基づくもので、さらに敷居を高めようとするものではない。(東京でも毎回のように Kanta さんが初心者向けセッションを開いてくれています。Kanta乙) ● Rails東京の特徴 東京では個々のRails技術者が参加し、興味のある話題に応じてセッション参加者の集合が決定される。複数の候補からセッションを選ぶことができるため、目的の健全性が満たされやすい。特に自分が知りたい内容に関して、それに興味を持つ人々とブレストを行う場があるのは非常に有益であり、何か新しいアイディアが生まれる可能性が高い。参加者は、知識を深めることができるが、恐らく、知識を広げることはできない。 ● Rails関西の特徴 一方関西では、まず「関西」というコミュニティがある。スタッフが事前に全てを準備し、参加者は教えてもらえばよい。一見受身のようだが、わず嫌いの情報から新たな知見を得ること

  • ヽ( ・∀・)ノくまくまー(2007-01-17)

    ● [熊井ちゃん] 第1回Rails Chatブレスト大会 熊井ちゃん、Rails Chat の人たちとブレスト(オフ会)してきたよ。内容は主にテーブル設計について。簡単に1NFのおさらいをした後、2NF,3NFとか一気に飛ばしていきなり7NFの話に。なんとなれば、その途中は誰も正確には理解していないから。そんな中途半端な技術者達が4人。4時間強の冬冬合宿へ!久々に脳がオーバーヒート。お陰で色々悩んでた部分が一気に氷解&整理できたけど、急速に得たものはそれが失われていくのもまた早い、って彩子さんが言ってたから忘れないうちにメモっておくね、熊井ちゃん。 ● 7NF 1NFでドメインの原子性とタプルの集合性を保障した熊井ちゃん。2〜3NFで関係従属を、4〜5NFで結合従属を解消した熊井ちゃんは、6NFでドメイン間の独立性を保障することに成功した。そして遂に熊井ちゃんはリソースを「存在」と「ドメ

    tokada
    tokada 2007/01/21
  • http://wota.jp/ac/?date=20070104

    tokada
    tokada 2007/01/07
    「「否定形の像」は描くことができない。」
  • ヽ( ・∀・)ノくまくまー(2005-10-16) CaptureHelper

    ● [rails] CaptureHelper view のコード片(ブロック)の評価結果を文字列として利用するヘルパです。次の2つのメソッドが提供されていますが、動作は同じです。結果を文字列として返すか、自動的に変数に代入するかで使い分けます。 capture: ブロックで指定された部分(viewのコード)を評価した結果を文字列として返す content_for(name): captureした結果を引数のインスタンス変数として保存する (引数が 'foo' であれば @content_for_foo に入る) これを利用するとLayoutの仕組みは「action の view 全体が content_for(:layout) で包まれること」と表現できます。 ● 利用例1:JavaScriptの利用を動的に指定する あるJavaScriptの利用がロジックによって動的に決定される場合や

    tokada
    tokada 2006/10/20
  • ヽ( ・∀・)ノくまくまー(2006-01-14)

    ● [Rails] IPE (In Place Editor) In Place Editor は表示された項目をクリックすることで、そのまま編集モードに移行してしまう Ajax の便利機能です。SoftwareDesign(2005-12) やsecondlife さんのページの TODO デモを見て衝撃を受けた人も多いでしょう。controls.js に含まれていますので、 new Ajax.InPlaceEditor( element, url, [options]); と直接 JavaScript を記述して利用することもできますが、Rails ではヘルパが用意されていますのでそちらを利用してみます。

  • ヽ( ・∀・)ノくまくまー(2006-09-24)

    ● 前半:「最近のAjaxとかCometとかのライブラリについて」「JS探訪」(by のりお) 最近よく聞く言葉で、意味もわかってないんだけど、調べるほどのテンションでもない、けどやっぱり気になってる部門ベスト3に入る「Comet」。そんな Comet を含んだAjax系てんこもりセッションに参加。ということで理解した内容。 [Cometとは] Ajaxの第二形態のような技術の総称であって、アプリケーションやライブラリの名前ではない。 一言にすると、HTTP コネクションを繋ぎっぱなしにしたAjax。 従来のAjaxでは通信のトリガはクライアントであったが、Cometではサーバが通信のトリガとなる。 実際はクライアントから接続するのであるが、サーバはすぐに返答せずにコネクションを維持し続ける。 サーバの気分でリクエストを返すので、サーバからの動的な通信を実現できる。 クライアントはすぐにま

    tokada
    tokada 2006/10/18
    Cometについて勉強会があったらしい
  • LiteSpeed

    (注意: 印はくまくまー調べなので鵜呑みにしてはいけません) [開発] Apache上での開発はまず無理である。WEBrick は Ruby標準な上に最低限の機能・スペックは満たしているので未だに愛用者は多く、Rails初学者には十分である。WEBrickの速度に限界を感じたユーザは Lighttpd(愛称 lighty)を利用する。速度も十分でや設定も容易だが、起動時の引数でポートを指定できないなど若干使いづらい面もある。lighty ユーザは Mongrel に進むという予言もある。 [運用] Webサーバのデファクトはやはり Apache で、Rails的には生CGIは無理だが、FastCGIなどのモジュールと併用することで速度的な問題はなくなる。RailsはLighttpdなどの開発向けのサーバで動かし、リバースプロキシを利用する手もある。完全に Rails のみで運用されるサイト

    tokada
    tokada 2006/09/15
  • ヽ( ・∀・)ノくまくまー(2005-08-17) Migration

    ● [rails] Migration データベースのスキーマ(変更)を管理する機能です。もれなくこんな特典がついてきます。 運用環境でアプリケーションのバージョンを上げるときに、スキーマ変更の漏れがなくなる。 共同開発者がいる場合、rake 一発で自分のところにスキーマ変更を反映できる。(svn update と rake migrate はワンセット♪) バージョンコントロールされるので、Migrationで管理している任意の時点のスキーマに戻すことが可能。 スキーマ変更は ActiveRecord::Migration のサブクラスを作って定義します。リビジョン管理していますので、各バージョン毎に1つのクラスを追加することになります。そのクラスの中で定義した up, down というクラスメソッドの内容が、それぞれアップグレードとダウングレード時の処理として実行されます。Rails

    tokada
    tokada 2006/09/14
  • ヽ( ・∀・)ノくまくまー(2006-05-14)#関連名による INNER JOIN が欲しい

    Member.find(:all, :joins=>"INNER JOIN groups ON groups.id = members.group_id INNER JOIN favorites ...") _, ,_ 从 ’w’) ∩ < ヤダヤダ、もう耐えられないのー!シンボル名でJOINしたいの〜! ⊂   ( ヽ∩ つ  ジタバタ 〃〃 class ActiveRecord::Base class << self private def add_joins!(sql, options, scope = :auto) scope = scope(:find) if :auto == scope join = (scope && scope[:joins]) || options[:joins] sql << " #{expand_join_query(join)} " if j

    tokada
    tokada 2006/09/11
    has_manyのINNER JOIN対応
  • Symbol#to_proc - ヽ( ・∀・)ノきゅまきゅまー

    Add Symbol#to_proc, which allows for, e.g. [:foo, :bar].map(&:to_s). [Marcel Molina Jr.] これでつよ、ずっと欲しかったものは!と、これだけじゃ、丁度、迷宮入りした事件の説明なしに、エレガントな解決方法を先に言ってるようなものなのでわからないですね。では、まず直面している事件から整理しましょう。

    tokada
    tokada 2006/09/11
  • ヽ( ・∀・)ノくまくまー「habtm と has_many(ActiveRecord)」

    ● [Rails] habtm と has_many :through (ActiveRecord) habtm は多対多の関係にある2つのモデルを表現するときに非常に便利です。 テーブル (habtm)

    tokada
    tokada 2006/09/10
  • ヽ( ・∀・)ノくまくまー(2005-07-21) - 優しいRailsの育て方 Layouts

    ● Layouts レイアウトはコンテンツのヘッダやフッタといった共通部分の変更を容易に管理するための仕組みです。テンプレートとの違いがわかりつらいですが、テンプレートは局部的なERb(rhtml)で、レイアウトはその名の通りページ全体の構成を決めるERbと言えます。簡単なHTMLを出力するコンテンツを例に、 テンプレートのみ 部分テンプレートを利用 Layoutを利用 のそれぞれでどう記述が違うか見てみましょう。 ● 1.テンプレートのみ # app/views/berryz/song.html <html> <head> <title><%= @song.title %></title> </head> <body> <%= @song.contents %> </body> </html> これは、Railsでの基的な view の記述方法です。単一のページでは問題ありませんが、複

    tokada
    tokada 2006/09/03