タグ

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

  • scala play はじめの一歩

    ● [Scala] play scala はじめの一歩 インストール インスコ手順 scala 体 play framework play scala module 1. scala これからはじめる人は2.8系(まだRCだけど)がお薦めです。(2.7 からいい感じに進化してるので)。ディストリのパッケージはまだ2.7系のはずなので、家http://www.scala-lang.org/downloads から取ります。 2.8の 最新版(2010/05/04現在は scala-2.8.0.RC1.tgz) をDL 適当な場所に展開 その scala-2.8.0.RC1/bin に PATH を追加 あと java も適当に入れます (ubuntu なら sun-java6-jre とか) scala と打って、console が立ち上がればOK。(終了はCtl-dで) 2. play

  • RubyからScalaに乗り換えた15くらいの理由 - ヽ( ・∀・)ノくまくまー(2010-04-26)

    ● [Scala] RubyからScalaに乗り換えた15くらいの理由 [注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、 Rubyコードで型チェックをやるのがになる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 「Scalaプログラミング入門」を読みはじめて、いきなり大きく頷いてしまった。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3) "Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかった!」という驚きと共に Sc

  • ヽ( ・∀・)ノくまくまー(2010-03-18)

    SSDなUbuntu 9.10のインストールメモ Ubuntu を 9.10 に上げる。折角なので、SSDにチャレンジしてみた。 SSDは「書き込み回数が多いと寿命は2年」らしいので、rootパーティションで利用して、データ領域にはIDE(SATA)を利用することにした。インストール自体は30分弱で完了。てか、9.10のインストーラの完成度は異常。デフォルトで進んでたら ext4 になったけど、まぁよしとしよう。 優しいSSDの育て方 Ubuntu LinuxSSDの寿命を延ばすための設定 http://tech.lampetty.net/tech/index.php/archives/299 SSD保護対策 http://blog.goo.ne.jp/j_adversaria/e/99422fb6cbee9da80d45ec386bc30b41 の情報をまとめると、 swap領域を

  • ヽ( ・∀・)ノくまくまー(2007-11-10) ActiveScaffold

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

  • 優しい Merb の育て方

    ● [Rails][Merb] Merb とは? Merb (Mongrel + Erb) は MVC ベースな Ruby の Web フレームワークである。簡単に言うと、軽量な ActionPack クローンである。Rails のテーマが「規約とDRY」ならば、Merbのテーマは「疑わしきものは入れない」であり、Rails の各機能を取り込みつつも、小さくて単純で簡単で軽量、そして高速であることを目指している。 特徴 コアはシンプルに (必要な機能はプラグインとして追加させる) thread safe cgi.rb を使っていない 高速な ERb エンジンである Erubis を標準装備 Rails に似ている (機能、ファイル配置) 大体3倍くらい速い (Rails Mongrel との比較) チートシート (Rails との比較) 基的に Rails である。app 以下のディレク

  • ヽ( ・∀・)ノくまくまー(2007-08-20)

    4コアに期待しちゃって眠れないってこういう気分なの? 静的ファイルにも Rails にも concurrent に ab レスポンスボディは同じ結果になる 最初は静的ファイルに "nksk" かな? 予想は全部、Rails は×マーク 負け ちゃめちゃめそーおー Rails は100倍かかるの?少し心配だけどわくわくしてるわ DB・ERb は必要無いわ、David が驚くくらい 早く render :text=>"nksk" しちゃうもん production モードも完璧だし nksk ベクトル

  • ヽ( ・∀・)ノくまくまー(2006-09-07) CSSでポップアップ

    CSSでポップアップ ちょっとした説明文をポップアップするには "title" 属性が便利であるが、複数行表示がブラウザに依存し、画像を含んだコンテンツには対応できない。かと言ってJSを持ち出すのも面倒だと思っていたら、CSSのみで実現できるらしい。そのまとめ。(via RailsChat) CSS .popup .tips { display : none; position : absolute; } .popup a:hover { position:relative; } .popup a:hover .tips{ display : block; top : 30px; left : 20px; white-space : nowrap; text-decoration : none; border : 1px solid black; color : black; back

    sirocco
    sirocco 2006/09/12
  • ヽ( ・∀・)ノくまくまー(2006-01-05)

    ● [Rails] with_scope (ActiveRecord) ActiveRecord::Base.with_scope(method_scoping = {}) {|| ...} with_scope はテーブル操作の範囲を限定するクラスメソッドです。指定されたブロックを実行する際、xxx_by_sql 以外のテーブル操作用のクラスメソッド全てが引数で指定された制限(影響)を受けます(※1)。 以下のような場面で効果を発揮します。 共通の値を持つ複数アイテムを簡単に初期化したい。 find(params[:id]) で取得したデータが不正アクセスかどうかの検証が面倒だ。 かと言って、find 時に :conditions 指定するのも面倒だ。 さらに、それをCRUD毎に指定するなんて気が遠くなる。 ※1:レシーバと同じクラスのみ影響を受けます。 ● スコープ指定 スコープの種類

  • ヽ( ・∀・)ノくまくまー(2005-06-29)

    ● pagination (簡単なページ管理) Webコンテンツで一覧表示時に「前のページ」「次のページ」といったリンクを作るのは結構面倒であるが、Rails には pagination というページ管理機能がある。ロジック(コントローラ)側では、テーブルのモデルを表すシンボル(必須)と表示条件等を引数に取りpaginate を呼び出すだけ。 # controller def list @pages, @items = paginate(:item, :per_page => 20, :order_by => 'itemcode') end 戻り値はページ管理オブジェクトと検索結果のモデルのインスタンスの配列。後者はAR::find_allと同じものであり、前者のページ管理オブジェクトがページに関する各種情報を持っているので、ビュー側ではそれを以下のように利用する。 # view <%=

  • Associations | 優しいRailsの育て方 | ヽ( ・∀・)ノくまくまー

    class Member < ActiveRecord::Base has_one :favorite end class Favorite < ActiveRecord::Base belongs_to :member end has_one で関連を定義すると、以下のメソッドが自動的に定義されます。(belongs_to 側にも同様のメソッドが定義されます)。 (関連名)(force_reload = false) : 関連するオブジェクトを取得します。 (関連名)= : 関連するオブジェクトを代入します。(自動的にDBへ保存されます) (関連名).nil? : 関連するオブジェクトが存在しないことを確認します。(なければ true を返す) build_(関連名)(attributes = {}) : 関連するオブジェクトを作成して返します。(DBへの保存はされません) create

  • 運用サーバ速度比較

    ● [Rails] 運用サーバ速度比較 Pentium III(733MHz) Dual Ruby-1.8.4 (2005-12-24) Lighttpd-1.4.11 Mongrel-0.3.12.4 WEBrick-1.12 Apache2-2.0.55 LiteSpeed-2.1.16 Standard

  • ActiveRecord

    Introduction 第1章: for Ruby users (4) ・CRUD operations ・Assocations 第2章: for Rails users (15) ・With Scope ・Scoped Access 第3章: for Rails developers (17) ・Acts As View ・Finder Query CRUD : ActiveRecord Pattern require 'rubygems' require_gem 'activerecord' ActiveRecord::Base.eatablish_connection( :adapter=>"sqlite3", :db=>"db/users.db" ) class Member < ActiveRecord::Base # "members" e

  • ヽ( ・∀・)ノくまくまー(2005-07-18) - 優しいRailsの育て方

    ● scaffold module Rails の代表的な特徴の1つであり、コントローラ内で "scaffold モデル名" と唱えるだけで、そのモデルに対する標準的な一連のアクション(list, show, create, edit, update, destroy)を定義してくれるオマジナイである。その生産性は高く、見た目に拘らなければ、実質その1行で既存のDBのテーブルを操作するアプリケーションが完成してしまう。だからこそ、Railsの入門サイトや紹介ページでは真っ先に説明されてしまうのだが、個人的には次の2つの問題のためにあまり好きではない。 1. scaffold で一連のページを確認した後、次に何をすればいいのか(どうやって変更するのか)で途方にくれる 2. 各アクションの定義が module により動的に追加されるため、override ができない (Ruby::CGI と同

  • ヽ( ・∀・)ノくまくまー(2006-02-15)

    ● [Rails] スペジェネ #3 えっと、まず、Edge の取り方にガセネタ書いてました。(正直すまんかった!!)。正しくは、vendor/rails に一式必要です。(vendor って書いていた)。全部舞波が悪いんです。もう拾った場所に返しておきました。というか、babie さん感謝です。 _☆ノハヽ_     /从 ’w’).l/|! <クゥ〜ン  _|  ̄し J ̄.|  |___ /  |_____.|/  /  ̄ ̄~        ̄ ̄ ● 更新内容 [新機能] acts_as_tree に対応 [修正] 通常版のソートでエラーが出る問題を修正 [バグ] 通常版でソートすると下の操作リンクが消える魔球 対応というか、acts_as_tree は has_many & belongs_to のマクロだったので、実は何も作業してなかったり。でも、association が同

  • ヽ( ・∀・)ノくまくまー(2006-02-14) - スペジェネ #2

    ● [Rails] スペジェネ #2 从*’w’)<舞波からのバレンタインプレゼントだよ! 新機能 順序変更が可能になった ('printorder' カラムがある場合のみ) 有効設定が可能になった ('enabled' カラムがある場合のみ) Controller.field_order で表示順序が指定可能になった % ruby script/plugin install http://wota.jp/svn/rails/plugins/branches/stable/special動作要件 trunk 3500↑ class Group < ActiveRecord::Base has_many :members, :include=>"favorites", :order=>"members.printorder", :dependent=>true has_many :songs

  • スペジェネ - ヽ( ・∀・)ノくまくまー(2006-02-04)

    ● [Rails] Special Generation (スペジェネ) スッペシャルで情熱的な機能を持った scaffold 特徴 1. jascaffold の上位互換jascaffold と同じことは全てできます。というか、jascaffold generator も含まれています。但し、データ(yml)のフォーマットが若干変更されたため、両 generator で定義ファイルの一部に互換性がありません。各機能は宣言部分で無効にできますので、新しいスペジェネを使うことお薦めします。 2. has_many に対応has_many & belongs_to なモデル関係を扱うことができます。モデルでの Association 宣言に従って、アクション用のロジックモジュールが自動的に生成されます。利用したい Association を両コントローラにそれぞれ宣言することで、所有側の li

  • ヽ( ・∀・)ノくまくまー(2005-12-28)

    ● [Rails] jascaffold クエスト (でれでれ、でれでれー) バグが現れた。 コンフィグキャピタライズド  1 クラスハードコーディッド   1 プライマリキーノットキャスト 1 バグ達はこちらにきづいていない。 くまの人は「ソノテイドギガワロス」を唱えた。 バグの群れは逃げ出した! 公開物のパッケージを更新できます。更新しますか? →はい くまの人は時の砂を使ってしまった。 tar cvf と tar xvf を間違えた! 修正したファイルが元に戻った! なんとバグ達が生き返った! くまの人のテンションが10さがった。 バグ達はわらっている。 (でれでれ、でれでれー) フォームサイズヘンコーキボンヌが現れた。 ショシキセッテイモヨロが現れた。 くまの人はデータファイルを拡張した。 かいしんのいちげき! 魔物の群れをけちらした! (チャラララ、チャッチャッチャー) Loca

  • ヽ( ・∀・)ノくまくまー(2005-12-21)

    ● [Rails] 続 jascaffold 〜マスタ情報はじめました〜 どうせお前らは create と destroy が動かないことに薄々気付きながらも、ついでにマスタ情報も YAML に書いて管理して欲しいなとか勝手なことを...(中略)...こんなんできましたけど。 jascaffold [9KB] http://rails.wota.jp/pubs/jascaffold-20051221.tar.gz [追記] 最新版 → http://wota.jp/ac/?date=20051228 修正点 なんとなく create と destroy の不具合を修正 (thanks to ブタ氏、poppen氏) 変更点 なんとなく show.rhtml で表示する項目はループでなく _form のように外に出した (名前は _show.rhtml) なんとなく上との対比で _form.

  • LiteSpeed

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

  • Scaffold の日本語化

    ● 特徴 日語化された scaffold 生成物を作成可能 config/localize.yml によって上記の日語部分を変更可能 $KCODE に応じて utf8/euc/shift_jis/jis/C 用の設定ファイルを準備 db/localized/TABLENAME.yml によってフィールドを日語表記可能 (ActiveHeart と同じ機能) View 毎に非表示にするフィールドを指定可能 Layoutに charset を入れてくれる show と edit 時にテーブル表示してくれる confirm_scaffold を取り込み(無許可) ● 使い方 プラグインを配置 vendor/plugins/jascaffold にこのツールを置く。 DB設定 scaffold 同様、テーブルのスキーマ情報が必要なので、先にDBを準備する。(config/database.y

  • 1