2011-01-01から1年間の記事一覧

Cucumber + CapybaraでUserAgentを設定してテストを行う

jpmobileで作成されたRailsプロジェクトをテストする必要があったので調べてみました。ちょっとググると次のサイトが出てきます。 Ruby 1.9 + Rails3 + jpmobileで構築したサイトをcucumberでテストするためのTips Capybara::Driver::RackTestに細工をしてUs…

Ruby標準添付CSVライブラリのCSV::Convertersについて調べてみた

CSVの書き出しでちょっとやりたいことがあって標準添付のCSVライブラリについて調べてたんだけど、結局標準のままだと出来なそうという結論に至りました。その際にCSV::Convertersについて色々ほじったのでメモがわりに残しておきます。 CSV::Convertersって…

世界でもっとも美しいポインティングデバイス「Magic Mouse」を購入した

▲イカの寿司 先日会社でiMacを購入して頂いたんですが、それに付属していたMagic Mouseの虜になったので個人的にも購入してしまいました。Macを使用している人は私の周辺にも多いのですがMagic Mouseを使っている人は少ないんでレビューしようと思います。 …

railsで必須入力項目にマークを付けるneed_labelを公開しました

railsでform_forを使ってフォームを作ったときに、必須入力項目を目立たせるのってめんどくないですか? せっかくmodelに必須入力である情報が入っているのに、Viewでイチイチ指定するのは二度手間です。そんな方のためにneed_labelというgemを作成しました…

Emacsでrubyを使う

先日参加したオープンソースカンファレンス広島でお話しした @eielh さんに影響されてEmacsでrubyを書きたくなりました。 ちなみに普段Railsの開発で使用しているのはRubyMineというRails用のIDE。メソッドジャンプやコード補完などRailsに特化しているだけ…

Rails3.1でController毎に異なるJavaScriptを出力

Rails3.1から組み込まれたCoffeeScriptを検証しています。コントローラを作成するとapp/assets/javascriptsにコントローラー名.js.coffeeってファイルが作成されますよね。当然該当するコントローラーに関係するViewを表示した時だけロードされると思ってた…

RubyWorld Conference 2011に参加してきた

9月5日と6日に松江市で開催されたRubyWorld Conference 2011に参加してきました。 RubyKaigiと比較してビジネス色が強いイベントなので、正直参加しようか迷ったのですが、参加してみてよかったです。 ▲くにびき大橋を埋め尽くすRubyWorld Conferenceののぼ…

capybara-webkitとcucumberでjavascriptを使ったページのテストを行う

みなさん、cucumber使ってテスト書いてますか?最近はrspecでユニットテストを書き、インテグレーションテストはcucumberを使う例が増えていると聞きます。 ここで問題になるのがjavascriptを含むページのテストです。色々情報を調べていたところ、capybara-…

acts_as_paranoidとjoinsの注意点

railsで論理削除を行うときに使うプラグイン「acts_as_paranoid」を使用するとき注意することがあります。modelにacts_as_paranoidを組み込み、通常の検索を行うと次のようなSQLが発行されます。 e = Employee.scoped SELECT "employees".* FROM "employees"…

RubyKaigi2011に行ってきました

7月16日〜18日に開催されたRubyKaigi2011に参加してきました。blogやTwitterでの知り合いとリアルで話をしたり、新しい技術を知ったり、大満足の3日間でした。以下、気になったセッションなど 1日目 Next version of Ruby 1.8 and 1.9 Rubyを作っているメン…

jQueryUIのsortableをiPhone/iPadで使うときにマルチタッチを無効化する方法

jQueryUIのsortableって便利ですよね。でも、iPhoneやiPadだとタッチイベントをうまく検出してくれずそのままでは動作しません。 そこでjQuery の sortable を iPad 対応するで紹介されているようにタッチイベントをマウスイベントに置き換えて動作させる方…

Mac OS X Snow leopardでpostgreSQL接続モジュールのpgをインストール

Mac上でpostgreSQLを使うつもりはないんだけど、Rails3のproduction環境でpostgreSQL接続モジュールのpgを使用する必要があったのでそのためのメモ。 ほとんどの場合gem install pgすると checking for pg_config... noとか表示され、コンパイルできないと思…

Rails3.0.4以下ではvalidationのmessageがproduction環境で正常に表示されない

久々にハマったのでメモ。 次の環境でvalidationのmessageがproduction環境で正常に表示されない現象が発生しました。 rails3.0.3 postgreSQL CentOS Apache2 この環境で次のようにモデルにバリデーションを設定します。 app/model/user.rb class User < Act…

特異クラスを使ってRailsのmodelを動的に作成する

Railsのmodelを動的に定義したくて悩んでたらTwitterで @antimon2 さんがうまい方法を教えてくれました。 # このmodelを継承したクラスを作成すれば # validationを行ったり、viewでform_forが使える class SimpleModel include ActiveModel::Validations in…

退職しました

4月8日を持って有限会社システムフロンティアを退職しました。 2004年の会社設立以来、コアメンバーとして活躍してきましたが、今回縁あって県内の別の会社に転職することとなりました。(転職先の会社名を公開してよさそうであれば、後で更新します) やめた…

WEB+DB PRESS vol.61 Rails3テスト最前線がすばらしい

WEB+DB PRESS vol.61の「Rails3テスト最前線」という記事がかなり良かったので、注釈を交えて紹介したいと思います。 何が良かったのか? 自分はRails2系でTest::Unitを実践していました。AutoTestとYAMLによるデータ投入でおおむね満足していましたが、次の…

TextMateでRuby1.9のマジックコメントを簡単に挿入できるようにした

mac

Ruby1.9からソースコード中で日本語を使うときは # -*- coding: utf-8 -*- みたいに先頭行にマジックコメントを書かなくてはならなくなった。 結構面倒なのでTextMateで簡単に挿入できるようにしてみた。メニューのBundles -> Bundle Editor -> Edit snippet…

メガネを買って大興奮でござるの巻

10代のころからPCの画面は見続けてたんだけど、全然近眼にもならなかったし、「私はこのまま老眼までメガネのお世話になることはないな」と思ってました。しかし、30歳を超えたあたりから、視力がだんだん落ちてきて、最近ではエディタのフォントサイズを大…

Tumblr web client 「Yunomi」をリリースしました

先日Tumblr用のwebクライアントを作ったのでherokuにデプロイしてみました。 Yunomi 特徴 ワンクリックでのreblog OAuthでのセキュアなログイン 今のところ対応しているのは絵のデータだけ iPhoneアプリのtumblr gearの軽快さをwebアプリでも、というコンセ…