サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大阪万博
www.4bit.net
Ruby on Railsにみる RESTfulアプリケーション の方向性 2006/11/24 第九回XML開発者の日 IT技術研究所 川村 徹 2 © Toshiba Solutions Corporation 2006 目次 • RESTful Webアプリケーションのメリット – WebアプリがRESTだと何がうれしいのか? • RESTfulフレームワークとしてのRails – 次期バージョン1.2へ向けてREST化の方向性 • REST on Rails 設計例 – Railsを例に、その方向性に沿ったもの • 終わりに RESTful Webアプリケー ションのメリット 4 © Toshiba Solutions Corporation 2006 REST (REpresentational State Transfer) とは • Webのあるべきアーキテクチャスタイル •
「Railsのmap.resourcesに単数形リソース必要じゃん~」って2ヶ月前から言っていてプラグインとか作ったりしていたのだが、それが通じたのか(偶然だけど)Rick OlsonがSingleton Resourcesを実装してくれた!(Changeset 5701) A singleton resource is global to the current user visiting the application, such as a user's /account profile. そうそう、そういうことなんだよ~。やっぱり考えることは同じだね。 使い方 routes.rbに、map.resourcesと違って単数形で書く。 map.resource :account # map.resourcesと紛らわしいので注意 すると、こんな感じのルーティングが生成される。 HTTPメ
« Singleton Resourcesが実装された | メイン | Rails勉強会@東京 第13回&忘年会 » 2006年12月15日 (金) URIにidを使いたくない [テクニカル] Railsでmap.resourcesを使っているとURIが /users/1 とか /articles/99 って感じになる。 でも、URIに数字のid使うのダセeeeeeeeeeeee /users/tkawa みたいにユニークな文字列が使いたい!!!! ってことがあるはず。(そもそも内部的な値であるはずのidをURIに使っていいのかという議論もある) そこでルーティングのidの部分を差し替えられるコードを簡単に書いてみた。 使い方 idの代わりにnameというカラムを使う場合、このように書く。 map.resources :users, :id => "name" これで例えば GET /us
« ActiveResourceはRails1.2ではリリースされません | メイン | 第6回スヌーカージャパンオープン・アダムカップ » 2006年11月25日 (土) 第九回XML開発者の日 [テクニカル] 「第九回XML開発者の日」で発表してきた。なんか予想外に緊張しまくりで、声も震えるしもう今考えると相当恥ずかしい。拙い発表ですみません。会場にRuby関係の方はあまりおられなかったようで、そういう意味では新鮮に聞いていただけた方も多かったのではと勝手に思っていますがどうだったでしょうか。 発表資料はこちら。 「Ruby on RailsにみるRESTfulアプリケーションの方向性」(PDF 約2MB) スライド中の単数リソース対応プラグイン“map_singular_resource”についてはこちらの記事を参照。 map_singular_resourceプラグイン 以下各セッ
「裸リムーバブル」と呼ばれる、SATAのHDDをそのまま(インナートレイとか無しで)着脱できるリムーバブルラックをついに導入してみた。ほんとは買ったのは上のじゃなくて同一品のツクモのEX-SARC1B。玄人志向のと比べて500円ほど高いのでなんか損したかも。 まだSATAのHDDは2台しか持っていないのだが、それでもこれは予想以上に便利だね。今までパラレルATAのときはインナートレイ式のを使っていてトレイをいっぱい買っていたのだが、なんか今までがバカみたいに思えてくる。 まあ裸だと基板が剥き出しなのでそれなりに扱いには気をつけないといけないし、あと予想以上に熱くなるので(フォーマットしたあと取り出したら熱くて火傷しそうになった)注意しなきゃいけないというのもある。 でもやっぱりとても便利なのでなんかちょっとうれしい気分。 参考: リムーバブルHDDケースについて語る Part 18 投稿者
« SimplyRestfulプラグインのススメ | メイン | 舞波本きたー » 2006年08月02日 (水) map.resourcesのススメ(「SimplyRestfulプラグインのススメ」改め) [テクニカル] 前の記事に引き続き、map.resourcesのオプションの利用方法を解説。DHHによってRails本体にマージされちゃったので、「SimplyRestfulプラグインのススメ」って言えなくなっちゃった…。てことで改題。 コントローラ名を変える コントローラにモデル名の複数形をつけるのが気に入らない場合、コントローラ名を好きな名前に変えることもできる。map.resourcesにオプションでこのように指定してやるだけだ。 map.resources :people, :controller => "person" 特定のパラメータを必須にしたい場合 例えば、特定のグルー
« 金曜夜はスヌーカー | メイン | map.resourcesのススメ(「SimplyRestfulプラグインのススメ」改め) » 2006年07月31日 (月) SimplyRestfulプラグインのススメ [テクニカル] はじめに 日本Rubyカンファレンスから早2ヶ月弱、DHHのセッションに衝撃を受けた人(僕)もそうでない人もいたと思うが、このセッションで繰り返し語られたCRUDな設計・実装がこれからのRails界の潮流になっていくのは間違いないと思う。 ちなみにまだ見てない人はこちら。 「Discovering a world of Resources on Rails」スライド (PDF) 日本語による解説 by あんどうさん そこで、このDHHのセッションに出てくるCRUDな実装をサポートするプラグインが、SimplyRestfulプラグインだ。 (って書き始めたのはいいの
« 第5回全日本スヌーカー選手権 | メイン | DHH loves REST!? その2(ActiveResource) » 2006年06月15日 (木) DHH loves REST!? その1(RESTプラグインの紹介) [テクニカル] 日本Rubyカンファレンス2006。DHHのセッション内容がヤバイ。チケットが入手できなかったので聞けなかったけど(発表資料くれー)。タイトルが「One controller, many ins, many outs」→「Discovering a world of Resources on Rails」。うひょー。世界リソース発見。 Blogなどでレポートを書いてるみなさんありがとうございます。以下関係部分を引用。 moroの日記 - 日本Rubyカンファレンス2006 二日目より CRUD素晴らしい HTTPのメソッドで、既にCRUDできるじゃ
« Rails勉強会@東京 第6回 | メイン | ドラゴンのスヌーカーレッスン Part4 » 2006年05月25日 (木) 簡単認証プラグイン試作 [テクニカル] 「ヽ( ・∀・)ノくまくまー(2006-05-21)」より 本格的な認証機能は不要なので、のーにゅーまでもう時間がない!みたいな必死なときに30秒くらいでとりあえずな認証をかけられるものがあると便利だとゆいたいです。とりあえず .htaccess でBasic認証をちょこっと置いてます、みたいな。 class AdminController < ApplicationController htpasswd :user=>"maiha", :pass=>"berryz" # 認証(何行でもかけて上から随時実行) htpasswd :file=>"/var/www/passwd/.htpasswd" # 外部ファイル指定も可能
« Rails勉強会@東京 第5回 | メイン | 888.com World Snooker Championship » 2006年04月17日 (月) Controller#respond_toはWeb ApplicationとWeb Serviceの垣根をなくす!? [テクニカル] 昨日のRails勉強会のポジションペーパーの内容を起こしてみた。内容はほとんどヽ( ・∀・)ノくまくまーからのインスパイヤなんですが。なので詳しくは元記事を見てください。このblogの記事の流れとしてはずいぶん前の「RESTful Web Applicationの可能性」からの続きの内容という感じです。 Rails勉強会@東京 #5 ポジションペーパー(PDF) Rails 1.1からの新機能として、Controller#respond_toというメソッドができた。どういうものかというと、 HTTP/1
« LAMP | メイン | AnnotationとPOJO » 2005年06月21日 (火) RESTful Web Applicationの可能性 [テクニカル] RESTについて、前に先輩のsatoshi氏と話をしていたのだが、共通の感想が「WebブラウザからPUT, DELETEメソッドが使えればいいのに…」ということだった。HTML form要素のmethod属性は、仕様として"GET"と"POST"しか許されていない。実装もそうなっているようだ。例えばGekkoの実装の場合「Tociyuki::Diary - Gekkoのform@methodはgetとpostだけを受け付ける」 そこでPUT, DELETEなしでWebアプリケーションのURI設計をするとしたらどうなるかなと思い、ちょっと調べてみると、W3CでXFormsという規格があり、他のメソッドも使えるようになっている
« AnnotationとPOJO | メイン | 病気 » 2005年06月23日 (木) RESTfulアプリケーションとCookie [テクニカル] おおっ、RESTful Application関連のレポートを発見。しかも2年前。 REST版ショッピングカート 方向性はおおむね同意。そして、クッキー使ってもいいんじゃない? たしかにパフォーマンス低下やプライバシー漏洩ってのはあるけど、RESTの原則からいうと、クッキーによってresponseを変えてはならない、ってだけだから、クッキーを手軽なローカルレジストリとして使うのはアリなような気がする。ドメイン別だから便利だし。もちろん、都度サーバに送られたクッキーは使わない。 それとも、ブラウザが開いている間はオンメモリで保持しておいて、ブラウザが閉じる(もしくは別のサイトに移る)ときに、ローカルのクッキーに書き出すっていうことはできな
« AtomPPに検索って無いの? | メイン | はてなブックマークは便利だけど… » 2005年07月06日 (水) Atom + OpenSearch [テクニカル] 昨日のAtomPPの検索のつづき。YAMAMOTO Yohei氏の関連記事を読み進めながらいろいろ調べてみると、A9 OpenSearchに話がつながることがわかった。やっと数ヶ月遅れで話題に追いついたのかな。yohei氏の記事ではAtomフィードを拡張してOpenSearch RSSを追加する例が示されている。 でもOpenSearchってなんか方向性が違う気がするんだけど。検索エンジンのインタフェース統一なんて高尚なものではなくて、AtomがPublishing ProtocolとしてCRUDを実装するなら当然検索も必要です、と言いたいだけなのだ。CRUDのRは、ReadだけではなくてRetrieveもあるのです(
« 病気 | メイン | Atom + OpenSearch » 2005年07月05日 (火) AtomPPに検索って無いの? [テクニカル] AtomPP (Atom Publishing Protocol; 今までは Atom API と呼ばれていた)の仕様ドラフトを読んでいたのだが、検索機能が規定されていない気がする。 具体的には、まずRetrieve用URIの規定がない。FeedURIを使うと思われるが、そもそもFeedURIの意味が広すぎる。 さらに、GETメソッドでのクエリーの書式も規定されていない。これが決まっていないと、クライアントはどうやって目的のエントリを検索したらいいのかわからない。 これってとてもマズイ気がするんですけど…。 追記: はてなのアプローチなど、たしかにこのようにすればRESTにしたがって検索機能を実装することが可能。しかし、問題なのはこの機能をクライ
このページを最初にブックマークしてみませんか?
『ぶろぐ。@4bit.net』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く