<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://www13.atwiki.jp/maimuzo/">
    <title>Ruby on Rails プラグイン まとめ wiki</title>
    <link>http://www13.atwiki.jp/maimuzo/</link>
    <description>Ruby on Rails プラグイン まとめ wiki</description>

    <dc:language>ja</dc:language>
    <dc:date>2011-08-29T14:04:13+09:00</dc:date>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/63.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/62.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/61.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/60.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/59.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/58.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/57.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/56.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/55.html" />
                <rdf:li rdf:resource="http://www13.atwiki.jp/maimuzo/pages/54.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/63.html">
    <title>コメント/acts_as_commentableプラグイン</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/63.html</link>
    <description>
      -good morning - k 2011-08-29 14:04:14      </description>
    <dc:date>2011-08-29T14:04:13+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/62.html">
    <title>Rails用エンジン(Rails Engines)</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/62.html</link>
    <description>
      日本語    </description>
    <dc:date>2010-06-29T15:22:31+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/61.html">
    <title>open_id_authenticationプラグイン</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/61.html</link>
    <description>
      **プラグイン名
open_id_authenticationプラグイン

*setup
**何が出来るか
-OpenIDを使ってユーザ登録やログインする処理を作る
-OpenID Providerからの追加属性(メアドとか性別とか)取得サポート(SREG)
-OpenID Providerをホワイトリスト/ブリックリストで制限する
-OpenID URLからOpenID ProviderのURL(Endpoint URL)を調査して、上記ホワイト/ブラックリストに追加するための[[スクリプト&gt;&gt;http://www13.atwiki.jp/maimuzo?cmd=upload&amp;act=open&amp;pageid=61&amp;file=endpoint.rb]]も用意(Maimuzoが適当に作った物)
-open_id_authenticationプラグインは、部品を提供しているに過ぎなく、ジェネレータなどは付いてこないので、基本的に処理は自分で作る必要がある
**方針
-結局、どんな機能が必要で、認証できた/出来なかったときどうしたいかは、アプリ毎に違うので定型化しない方がよい
-でも、フルスクラッチで作ると辛い
-open_id_authenticationを部品として使い、細かいところは自分で作る
-ジェネレータで作るより、コピペでがりがりやる。(ジェネレータ無いし)
-open_id_authenticationプラグイン自体にも手を入れる(そのままだとエラーの振り分けさえ出来ないので)
-下記コードをそのまま動かすには、[[改造版&gt;&gt;http://www13.atwiki.jp/maimuzo?cmd=upload&amp;act=open&amp;pageid=61&amp;file=open_id_authentication.rb]]が必要。これをvender/plugins/open_id_authentication/libに上書きして使う
**標準作業
# sudo gem install ruby-openid
# script/plugin install open_id_authentication
# rake open_id_authentication:db:create
# rake db:migrate
**お好みで    </description>
    <dc:date>2008-10-07T15:35:23+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/60.html">
    <title>GemSpec.infoのER図</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/60.html</link>
    <description>
      -GemSpec.infoのER図
フィーチャを基にモックとER図をまとめてみました。
ER図の作図は[[WWW SQL Designer&gt;&gt;http://ondras.zarovi.cz/sql/demo/]]というツールを使って描いています。
なんでコレがいいのかといった点は、[[北から南や西を見て思うこと: RubyOnRailsの設計手法もレールに乗せよう&gt;&gt;http://fromnorth.blogspot.com/2008/08/rubyonrails.html]]あたりを参照してください。

さて、ER図を見る方法ですが、[[WWW SQL Designer&gt;&gt;http://ondras.zarovi.cz/sql/demo/]]には画像ファイルへのエクスポート機能のような軟派なものは付いてないので、[[このXML&gt;&gt;http://www13.atwiki.jp/maimuzo?cmd=upload&amp;act=open&amp;pageid=60&amp;file=er.xml]]を[[WWW SQL Designer&gt;&gt;http://ondras.zarovi.cz/sql/demo/]]に食わせて開くのが一番いい気がします。

一応操作方法をメモしておきます。
+[[WWW SQL Designer&gt;&gt;http://ondras.zarovi.cz/sql/demo/]]を開く
+右上のSave/Loadをクリック
+ダイアログが開くので、そこのInput/Outputのテキストエリアに[[XML&gt;&gt;http://www13.atwiki.jp/maimuzo?cmd=upload&amp;act=open&amp;pageid=60&amp;file=er.xml]]の内容をペースト
+ClientのLoad XMLをクリック
とすると、以下のような感じでER図が表示されるはずです。
#image(http://farm4.static.flickr.com/3025/2877903059_2f1c2fef57_o.jpg,width=700,title=gemspecのER図)

*そうそう
ここに描いたのは、最終イテレーションでの完成型なので、最初は色々な機能が実装されてない状態で公開する予定です。一部機能は気まぐれで無くなってしまうかも知れません。(    </description>
    <dc:date>2008-09-22T18:00:40+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/59.html">
    <title>GemSpec.infoのモック</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/59.html</link>
    <description>
      -GemSpec.infoのモック
フィーチャを基にモックとER図をまとめてみました。
モックは[[Balsamiq Mockups&gt;&gt;http://www.balsamiq.com/products/mockups]]というツールを使って描いています。
これは大抵の部品が揃っていて、デザイン性などあまり本質ではないところに時間を使わず、必要な入力項目とか、ユーザインターフェイスを検討するのに向いているように感じるので、気に入って使っています。
ここでは、[[Mockupsの元ファイルのzip&gt;&gt;http://www13.atwiki.jp/maimuzo?cmd=upload&amp;act=open&amp;pageid=59&amp;file=mock.zip]]と、画像ファイルとしてエクスポートしたものを置いておきます。

*トップページ
#image(http://farm4.static.flickr.com/3088/2877834239_ae3e08868f_o.png,width=700,title=gemspecのmock-index-)

*トップページ→検索結果一覧
#image(http://farm4.static.flickr.com/3184/2878669062_43cd46e4d3_o.png,width=700,title=gemspecのmock-search_result-)

*トップページ→検索結果一覧→gem詳細
#image(http://farm4.static.flickr.com/3234/2877834367_95a0493047_o.png,width=700,title=gemspecのmock-detail-)

*トップページ→検索結果一覧→gem詳細→コメント詳細
#image(http://farm4.static.flickr.com/3080/2877834439_78f2973261_o.png,width=700,title=gemspecのmock-comment-)

*トップページ→使い分けリスト(タグクラウドクリック時)
#image(http://farm4.static.flickr.com/3098/2878669284_d37e0141a1_o.png,wid    </description>
    <dc:date>2008-09-22T17:59:05+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/58.html">
    <title>GemSpec.infoのフィーチャ</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/58.html</link>
    <description>
      -GemSpec.infoのフィーチャ
コンセプトを基にフィーチャモデルをまとめてみました。
FreeMindというマインドマップを描くためのツールを使ってまとめているのですが、そのままの形で公開するのは適さないので、このWikiに内容を書き出します。(Twikiへのエクスポート機能を使っているのでなんか表現方法が変ですが･･･)
#image(http://farm4.static.flickr.com/3054/2870096560_dd0c0c2e36.jpg,width=500,title=gemspec.infoのフィーチャモデルのマインドマップ)

*ログイン
      * 意味合い
         * ユーザ管理
         * 世界中かつクローンサイト通してユニークにする
         * IDは何かを書くときに必要。読むのは誰でも読める
         * いたずら防止。いたずらからのリカバリ
      * 必要機能
         * プログラマ対象だしOpenID一本でいっかー
            * openid_fu_generator
               * パスワード認証は殺す
         * 簡単なプロフィールと画像ぐらい登録できた方がよさそう
            * attachment_fu
         * マスタDBにスパムだと思われるOpenIDを書けばクローンも含めて全て消されるように
            * OpenIDだけ指定すれば関連するモノが全て消える構造に保つ
      * 問題点

*記事投稿
      * 意味合い
         * PHPのオンラインマニュアルのようにコードベースを作る
         * (特定領域に特化しているのため)ググっても出てこないものも、ここでは見つかるようにしたい
      * 必要機能
         * 直接書く
            * ベタテキスト
               * acts_as_commentable使える?
                  * ユーザ管理上問題なければ
            * GemCasts
     </description>
    <dc:date>2008-09-19T18:46:14+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/57.html">
    <title>GemSpec.infoのコンセプト</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/57.html</link>
    <description>
      -GemSpec.infoのコンセプト
設計するに当たって、コンセプトをまとめてみました。
FreeMindというマインドマップを描くためのツールを使ってアイデアをまとめているのですが、そのままの形で公開するのは適さないので、このWikiに内容を書き出します。(Twikiへのエクスポート機能を使っているのでなんか表現方法が変ですが･･･)
#image(http://farm4.static.flickr.com/3074/2843051995_5b42399799_o.jpg,width=850,title=gemspec.infoのコンセプトのマインドマップ)



* need
      * Gemの作者にとって
         * 利用者からのダイレクトフィードバック
         * バグ情報
            * 人によるかも知れない
            * でも、他のライブラリの影響で動かないとかは避けたいと思う
         * 次期機能要求
         * パッチ
         * 告知やアナウンスなどの一元化
      * 利用者にとって
         * Gemの用途別使い分け
            * このGemは何が出来るか
            * 同じ用途のGem同士ではドコが違うか
         * 障害情報
         * (Gem作者の)公式サイトはどこ?
         * 使い方の例やFAQ的なもの
            * PHPのオンラインマニュアルぐらいコンテンツが揃えば使いやすい
         * 情報が集約されれはココだけ探せば欲しい情報が手に入る
      * オープンソースとしての意味
         * 新技術を試したりリファレンス的に使う
         * 設計資料が揃った青果物の例として使う
         * ワールドワイドで使うアプリケーションの叩き台として

* 集約
      * メンテナンスされている度合いをわかりやすく表示
         * メンテナンスされてないGemはRubyやRailsなどのバージョンアップに伴い動かなくなったりする
            </description>
    <dc:date>2008-09-10T04:12:25+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/56.html">
    <title>GemSpec.info</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/56.html</link>
    <description>
      Gem関係の情報集約サイトであるgemspec.infoのための特設ページです。

*流れ
-[[北から南や西を見て思うこと: RubyOnRailsの設計手法もレールに乗せよう&gt;&gt;http://fromnorth.blogspot.com/2008/08/rubyonrails.html]]からの流れで、設計資料をまとめます。
-ただし、進行に伴い設計中に変更していくことになると思いますので、追う予定の方は最初に登録してあった資料も定期的に見直してください。
-まだ、どうやってまとめるのが、後で見る人にとってイメージが沸きやすいだろうと悩み中。なので様式は変わっていくかも。

*設計資料
**コンセプト
-[[GemSpec.infoのコンセプト]]
**ユースケース
-本来は5W1H的な実際の流れを想定して、こんな機能もいるよねーとか、こんな風に使う人もいるかもねーといった点をつぶすのに使う気がする
-受託開発など、設計者がユーザでは無い場合、もしくは使い勝手を重視する場合に作るのがいいのかも
-自分で設計して、自分で作る場合は、ユースケースとしてまとめる必要まではないのかなぁと思った。(のでとりあえずパス)
**フィーチャ
-[[GemSpec.infoのフィーチャ]]
**モック
-[[GemSpec.infoのモック]]
**ER図
-[[GemSpec.infoのER図]]

**ライセンス
この設計書のライセンスは[[Creative Commons License (表示・継承)&gt;&gt;http://creativecommons.org/licenses/by-sa/2.1/jp/]]です。細かいところは突っ込まれてから決めるので、CCに寄らずに使いたい人はとりあえず突っ込んでください。    </description>
    <dc:date>2008-09-22T17:06:04+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/55.html">
    <title>WANTED</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/55.html</link>
    <description>
      ありそで、ないようなプラグイン(存在するかどうかわからないプラグイン)をまとめてみます。
情報お待ちの方はこのwikiを書き換えるか、コメント入れてください。

-トラックバック受付用のモデルを管理するプラグイン(最近トラックバックって流行ってないのかなぁ)
-顔文字アイコン(? MSNメッセンジャーのようなアレ。PC用)を管理するプラグイン
-日本の郵便番号←→住所の変換エンジン(WebAPIはあるけど、ねぇ)
-ジオコーダー(緯度経度から住所に変換または逆変換するエンジン。WebAPIはあるけど、普通回数制限あるし遅いしで、ローカルに持ってた方が色々出来るよね)

使ってみたいもの
-[[Lipsiadmin&gt;&gt;http://rails.lipsiasoft.com/wiki/lipsiadmin]]って、実際どうなの?　ライセンスも含めて使いやすい?
-[[http://agilewebdevelopment.com/plugins/lipsiadmin]]あたりも参照


**コメント
#pcomment(reply)    </description>
    <dc:date>2008-08-22T19:04:34+09:00</dc:date>
  </item>
    <item rdf:about="http://www13.atwiki.jp/maimuzo/pages/54.html">
    <title>acts_as_favoriteプラグイン</title>
    <link>http://www13.atwiki.jp/maimuzo/pages/54.html</link>
    <description>
      **プラグイン名
acts_as_favoriteプラグイン

**このプラグインができること
+ユーザ毎にお気に入り(モデル内の特定レコード)を管理できる
+このユーザはBookモデルのid=1と4と23をお気に入りに登録してある、みたいな感じ

**ちょー簡単な使い方
&gt;script/plugin install http://svn.webwideconsulting.com/plugins/acts_as_favorite/
でインストールして、RAILS_HOMEにて
&gt;script/generate favorite_model Favorite
とすると、Favoriteモデルとマイグレーションファイルが生成されるので、
&gt;rake db:migrate
して、ユーザモデルに(acts_as_authenticated系使ったらこんなシンプルじゃないけど)
&gt;class User &lt; ActiveRecord::Base
&gt;  acts_as_favorite_user
&gt;end
を追加し、お気に入りに登録可能にしたいモデル全てに
&gt;class Blog &lt; ActiveRecord::Base
&gt;  acts_as_favorite
&gt;end
としておくと、以下のようなメソッドが使えるようになる。
お気に入りに追加
&gt; current_user.has_favorite(Blog.find(43))
お気に入りから削除
&gt; current_user.has_no_favorite(Blog.find(43))
お気に入りへの追加状況確認(returns true/false):
&gt; current_user.has_favorite?(Blog.find(99)) #=&gt; true/false
&gt; current_user.has_favorite_blogs? #=&gt; true/false Blogモデルはこのユーザのお気に入りに登録されているか?
検索
&gt;current_user.all_favorites  (ユーザのお気に入りが全て返る。blogsや他のモデルも一緒くた)
&gt;current_user.favorite_blogs  (ユーザのお気に入りのうちBlogモデルに関する分    </description>
    <dc:date>2008-08-22T00:55:07+09:00</dc:date>
  </item>
  </rdf:RDF>

