Ruby

Ruby でわんくまブログに記事を投稿する

Windows Live Spaces MetaWeblog API を使えば、わんくまブログに記事を投稿するプログラムが書けます。 Windows Live Spaces MetaWeblog API Ruby でわんくまブログに記事を投稿するサンプルがこちら。ユーザー名やパスワードは読み替えて下さい。 require …

GAE で DataMapper を使う準備

Google App Engine(以下 GAE) で DataMapper を使用可能にする、dm-appengine というプロバイダがあります。この dm-appengine の導入でハマってしまったので、今後のために導入手順をメモしておきます。まず、 appcfg.rb.bat gem install data_mapperで Dat…

Windows 環境で json の gem をインストールする方法

Windows 環境で RubyGem を使って、以下のコマンドで json をインストールしようとすると失敗しました。 gem install json解決方法を探したところ、以下の記事を発見! Windowsでgem install jsonでエラー | Memorandum ソースコードの改変が必要みたいです…

Windows に Ruby 環境を簡単に構築できる「Ruby Installer」

Windows に Ruby 環境を構築する場合、Ruby Installer を利用すると簡単です。 RubyForge: Ruby Installer for Windows: Project Info 『One-Click Installer』の後継で、インストーラーを実行するだけで、Ruby の Windows 用バイナリやツールを一括インスト…

google appengine の gem でインストールされる appcfg のバグ?

Windows XP で、日本語で名付けたアカウントにログインし、下記のコマンドを実行。 appcfg.rb.bat gem install インストールするgem名すると、「Document and Settings 下にフォルダがない」といった内容のエラーが発生する。肝心のフォルダ名は文字化けして…

JRuby の環境構築

JRuby の環境を構築したので、作業内容をメモしておきます。ちなみに OS は Windows XP。 最新の JDK をダウンロード。 ダウンロードした JDK をインストール。 JRuby の公式サイトから JRuby をダウンロード。今回は zip を選択。 適当な場所に解凍し、C ド…

Rails で認証機能を実現する

はじめに 認証機能を実装するなら、Rails プラグインの restful_authentication を使うと簡単。 以下、作業メモ。 インストール GitHub からプラグインをダウンロードする。 vendor/plugins ディレクトリに移動して次のコマンドを実行。 git clone git://git…

Rails でタグ機能を実現する

はじめに Rails プラグインの acts_as_taggable_on_steroids を使えば、タグ機能を簡単に実現できる。 導入方法 まず、次のコマンドを実行してプラグインをインストール。 ruby script/plugin install http://svn.viney.net.nz/things/rails/plugins/acts_as…

Rails の check_box が分かりにくい!

Ruby on Rails を使った開発で、チェックボックスを表示するために <table> <% for item in @items %> <tr> <td><%= check_box("item", "done") %></td> <td><%= h item.description %></td> </tr> <% end %> </table> と記述しても、item.done が True なのにチェックボックスにチェックが付きません。…

Ruby のシンボル

Ruby のシンボルと文字列の違いがイマイチ理解できなかった。でも下の記事を読んで、もしかしたら理解できたかもしれない。 Rubyのシンボルは文字列の皮を被った整数だ! 文字列の皮を被った整数…。C# の列挙型みたいなものかな?

Ruby 版 LINQ?

少しずつ Ruby の勉強を進めています。今回は Enumerable。Ruby の Enumerable モジュールを include したクラスは、C# の LINQ に似た構文でオブジェクトを検索できます。Array クラスが Enumerable モジュールを include しているみたいなので、このクラス…

XML 宣言部を書き変えるスクリプト

私の環境では、Sandcastle を使って HTML ヘルプを生成するとき、XML ドキュメントの宣言部に standalone の記述があると生成に失敗します。例えばこんな風に。 standalone の部分を削除すれば生成に成功します。そこで standalone の部分を削除するスクリ…

nabeatsu イテレータ

ネタです(ブームはとっくの昔に終わりましたが…)。3の倍数と3のつく数のときだけ、渡されたコードブロックを実行するイテレータを定義してみます。 class Range def nabeatsu self.each do |num| if (num % 3 == 0) || num.to_s.include?("3") then yield(…

FizzBuzz でリハビリ

Ruby に長い間触れていなかったので、リハビリのために FizzBuzz ってみました。まずは普通に for を使って。 for num in (1..100) if num % 15 == 0 print("FizzBuzz") elsif num % 3 == 0 print("Fizz") elsif num % 5 == 0 print("Buzz") else print(num)…