2007年08月17日13:25 by 山崎泰宏 open-uriは便利だがGETしかできないので何とかする話 カテゴリRuby Tweet sparklegate Comment(0)Trackback(0) open-uriはとても便利。Rubyに標準でついてくるopen-uriは大変理解しやすく、たった1行でHTTP通信をそつなく書けるのが魅力です。 ですが、残念なことにコードを読むとGETメソッドによるリクエストしかできないようになっています。 そこで調べてみた。kitajさんの記事で知ったopen-uri-post.rbが素敵です。 ちょっとコードを足せば機能を補充できる動的言語ならではの解決策。 でも、RESTなWeb APIをペシペシ叩きたくなって、PUTやらDELETEやらHEADやらをサポートしようと改造したりしてみたのですが、調べているうちに素敵なパッチ発見。 これをo
Ruby と MessagePack-RPC があれば、簡単なkey-valueストレージは簡単に作れます。54行で書けます(レプリケーションと負荷分散機能付き。サーバー38行、クライアント16行)。 簡単なKVSをベースにして、ログ集計や遠隔デプロイ、遠隔管理機能などの機能を追加していけば、ちょっと便利なサーバープログラムをサクサク自作できるハズ。 この分散KVSは、(keyのハッシュ値 % サーバーの台数)番目のサーバーにkeyを保存します。また、サーバーの名前順でソートしたときの「次のサーバー」と「次の次のサーバー」にデータをレプリケーションします。 すべてのサーバーで同じ設定ファイルを使います。サーバーごとの設定は引数を自分のホスト名に書き換えるだけなので、デプロイが容易です。 MessagePack-RPC for Ruby を使うと、分散しないkey-valueストレージ*1は
twbot3.rbは、RubyにてTwitterのbot(プログラムにより自動的に発言を行うアカウント)作成を行う際に、その補助を行う(主に、OAuthトークンの管理を行う)ライブラリです。どちらかといえばフレームワークに近いかもしれません。 特に、定期的に特定の位置からデータを取得し(RSSやTwitterのタイムラインなど)、それに基づいて発言を行うbotを作るのに適したものとなっています。 Rubyインタプリタの導入されている、定期的にプログラムを実行させるためのPC 定期的なプログラムの実行を行う機構としては、Unix系OSであればcron、Windowsであればタスクスケジューラなどがあります。(これらに関する詳細な説明は行いません) 電気代を考慮して、省電力なマシンを使ったり、省電力機能を利用するとよいでしょう。 Rubyの環境について Ruby 1.8以降での利用を推奨します
RubyCocoa とは? RubyCocoa は、Mac OS X アプリケーションを開発するためのフレームワークです。 RubyCocoa によって、 OS X アプリケーションを作ること Ruby から拡張ライブラリとして Cocoa を利用すること ができるようになります。 RubyCocoa のインストール Tiger の場合、以下の URL から最新版の dmg をダウンロードして、インストールしてください。 http://sourceforge.net/project/showfiles.php?group_id=44114 Leopard では、RubyCocoa は OS に標準添付されているので、インストールの必要はありません。 はじめての Mac OS X アプリケーション では、さっそくアプリケーションを作ってみましょう。 まず、Xcode を立ち上げます。(/De
This document discusses using the EM-Proxy Ruby gem to build a high performance proxy for monitoring and load testing web applications. It describes how to configure EM-Proxy to duplicate requests to both a production and test server, modifying requests and responses as needed. Examples are given to demonstrate transparent port forwarding, response alteration, and running post-processing steps aft
Active Record Active Record objects don’t specify their attributes directly, but rather infer them from the table definition with which they’re linked. Adding, removing, and changing attributes and their type is done directly in the database. Any change is instantly reflected in the Active Record objects. The mapping that binds a given Active Record class to a certain database table will happen au
ちょっとしたアプリを作ろうとしていたら、いつの間にかもともと作ろうとしてた言語から離れていて、rubyで書いていた。そこで対数を計算する必要があって、特になにも考えずに書いていたら、なんと、rubyには「任意の底を持つ対数を計算する関数」が用意されていないのですね! 「プログラミング言語 Ruby リファレンスマニュアル」を参考にrubyで実装されている関数についてメモしておきます。 Math.log(x) x の自然対数(底はMath.E)を返します。 Math.log10(x) x の常用対数(底は10)を返します。 任意の底を持つ対数を計算するコード 以下のページを参考にして、テストしてみたらうまくいきました。 HP 関数電卓 50g 任意の底の対数の計算について -こんにちは。特定機- 数学 | 教えて!goo # 任意の底 a を持つ x の対数を計算. def logA( x,
Migrationとは Migration とは、Railsで使うデータベースの管理機能で、テーブル作成・カラ ムの追加/変更などの作業を一元管理できます。SQL でスキーマを書くのでは なく、Rails独自の記法(Rubyの文法の範囲内)を使ってDB管理を行います。以 下のようなメリットがあります。 スキーマのバージョン管理ができる rake コマンドでスキーマのバージョンアップ/ロールバックが可能 データベースに依存しない書き方ができるので、他のデータベースに切り替えるのが容易 対応しているデータベース 現在、対応しているデータベースは MySQL, PostgreSQL, SQLite, SQL Server, Oracle です。 今後、対応DBは増えていくと思います。最新情報は、 http://api.rubyonrails.org/classes/ActiveRecord/Mi
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日本 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直
● [Ruby][Rails] RubyKaigi2006 決して表舞台には現れず、謎のまま消えていく(ヒカ碁のSAIメソッド)予定だったんですが、生DHHの魅力に負けてスピーカーとして参加してきました。発表者が豪華なので当然ながら控え室も凄いです。matz, keiju, nobu, ...火事が今起きたらRuby終わるぞ、みたいな。尻込みして奥のテーブルに行くと、moriq, secondlife, shugo, babie, ... という Rails 臭漂う濃い空間。居場所を探して棒立ちしてると、隣に立ってるDHH。knoh?(これなんて落ち着かない控え室?)。とりあえず、あいさつ回り。 从*’w’)<「はじめまして、舞波です」と言ってるのに、「ブチキレの人」と呼んでくる古代Rubyist達に苦笑。10年後に「舞波」と呼ばれて困惑してるであろう自分ワロス。各セッションの内容や感想は
● [Rails] habtm と has_many :through (ActiveRecord) habtm は多対多の関係にある2つのモデルを表現するときに非常に便利です。 テーブル (habtm)
もういくつ寝ると 今年のはじめにやりたいことリストを作った。今見たら50項目あるリストのうち25個が達成済みだった。ちょうど半分やりたいことをやったということだ。私にしてはまあまあの結果だと思う。満足。 やりたいことリストにあるもののうち、「〜を食べたい」系は概ねクリアし…
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
症状 $ script/server -e production ~.gem/ruby/1.8/gems/hpricot-0.8.1/lib/fast_xs.bundle: [BUG] Bus Error ruby 1.8.6 (2008-08-11) [i686-darwin9.6.0] hpricot を使おうとするとエラーが発生するようで、rails で開発していたときも似たエラーが発生した。 調査 一番似た状況のエントリーを見かけたが、gems を全て削除したら解決とありました。 根本的な解決ではないし、何より再インストールするのはメンドウだ。なんとか別の方法を模索したら、他にいい手が無いので gems を全削除することにしました。 参考URL:http://d.hatena.ne.jp/pacodelucia/20090127 解決 下の参考URLにある通りに削除し、その他にも削
$Id: index.html,v 1.6 2004/07/20 23:08:12 aamine Exp $ この文書は書籍『Rubyソースコード完全解説』のHTML版です。 ただし初校段階の原稿をベースにしているため、 書籍では修正されている間違いが残っている場合があります。 予め御了承ください。 2004-02-16 に全章を公開しました。 目次 まえがき 序章 第 1 部「オブジェクト」 第 1 章「Ruby言語ミニマム」 第 2 章「オブジェクト」 第 3 章「名前と名前表」 第 4 章「クラス」 第 5 章「ガーベージコレクション」 第 6 章「変数と定数」 第 7 章「セキュリティ」 第 2 部「構文解析」 第 8 章「Ruby言語の詳細」 第 9 章「速習yacc」 第 10 章「パーサ」 第 11 章「状態付きスキャナ」 第 12 章「構文木の構築」 第 3 部「評価」 第
asActionScript 3.0 でコマンドライン開発してる人は必携の rascut を導入してみた。Flex 開発や AIR 開発でも使えるよ。rascut は id:secondlife さんによる fcwrap 後継バージョン。ファイル修正から自動的にプレビューまでできたり、trace() の出力をコンソールに出力してくれたり、かなり便利。以前、勝手が分からずにかなり苦労したけど、最近、RubyForge にアップロードされてからは gem 一発で超簡単になったよ。前準備Flex SDK と fcsh を準備しましょう。fcsh にはパスを通しておきましょう。Flex SDK については ActionScript 3.0メモ さんを参照あれ。fcsh については fcsh で Apollo を高速コンパイル あたりを参照あれ。Flex 3.0 SDK には fcsh が付属してる
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く