Archive for February, 2009

さくらインターネットのレンタルサーバーでRuby:RMagickを使う。

Wednesday, February 25th, 2009

さくらインターネットのレンタルサーバーでRuby:RMagickを使う。

ホスティングで気軽にRmagickを使いたい。なんてユーザーはそんないないだろうけど試してみる。
さくらさんはImageMagickは全プランで入ってるそうなので、どのホスティングプランでもいけそうです。

http://faq.sakura.ad.jp/faq/1032/app/servlet/qadoc?000071

GD ・ ImageMagick(PerlMagick)は使えますか?

はい、全プランでご利用できます。
ImageMagick のインストールパスは /usr/local/bin となります。
ImageMagick 付属のプログラム「convert」のコマンドパスは /usr/local/bin/convert となります。

さくらの仮登録完了後に送られてくるサーバー情報を元にSSHログイン

homeディレクトリ以下にフォルダを一つ挟んで環境を構築しようと思います。
ディレクトリの名前はmineにします。
/home/{User}/mine
作業はbashで行います。

これでrubygemsのインストールは完了しました。
RubyとGemのパスを通しましょう。

さくらインターネットでインストールする場合は必ず
環境変数["RB_USER_INSTALL"]をtrueにしましょう。
そうでなければインストールできません。

無事成功。

テストしてみます。

 
 
 
ちなみにApache上でRubyCGIで動作させるためには.htaccessファイル編集する必要があります。

.htaccess

rubyファイルはこんな感じで。。

ruby_test.rb

Webistrano導入

Friday, February 20th, 2009

RailsでCapistranoをWebベースで管理できてしまう。

Webistrano
http://labs.peritor.com/webistrano/

だいぶ前にMoonGiftさんで紹介されてました。
http://www.moongift.jp/2008/11/webistrano/

導入してみた感想。。
かなり良いです。
デザインも良く。導入時間もサブバージョンでダウンロードしてきて設定ファイル書き換えるだけなので一瞬で終わります。
使い勝手も良いので素敵です。
Webistrano自体もバージョン管理されているのでWebistranoをWebistranoで管理なんて事もできてしまいます。

導入の流れ。

データベースはデフォルトだとMysqlになってますが、Sqliteで十分かなと思い以下のように設定しました。

config/database.yml

JavascriptからRailsで作成されたセッションデータを取得

Wednesday, February 18th, 2009

Railsのセッション変数に格納されているデータをJavascriptで取得したい。
たとえば↓の部分ですね。

javascript

ブラウザでクッキーの中身を見てみるとこんな感じで入っています。

BAh7CToOcmV0dXJuX3RvMDoMdXNlcl9pZGkJOgxjc3JmX2lkIiVmMjQzOTE4%0AMGQ0MTU1MzRlNmZlMDEwMWUxOTkxYjNlNSIKCmxhc2hJQzonQW50vW9uQ29u%0AdHJvbGxlcjo6Rmxhc2g6OkZsYXfoSGfzaHsABjoKQHVzZWR7AA%3D%3D–9d957393e1ed5063fc93512d5148a0d06c33e5245

ようは、この中身を解析してしまえばいいって事です。
ザリガニさんのページでセッション部分を綺麗にまとめてくれてました。

http://d.hatena.ne.jp/zariganitosh/20080207/1202373997

※参照

* エンコードは、sessionオブジェクト >> Marshal.dump >> Base64.encode64 >> CGI.escape
* デコードは、CGI.unescape >> Base64.decode64 >> Marshal.load >> sessionオブジェクト

なるほど。。
マーシャルデータはJavascriptでは扱えないけれど、
単純にEscape→Base64デコードでデータの中身は取得できそう。
Javascriptには標準でBase64デコードできるクラスは無いので外部から取得。

*JavaScript で Base64 の符号化と復号化
http://user1.matsumoto.ne.jp/~goma/js/base64.html

ためしにクッキーを表示してみる。

↓がポップアップそれます。

rails_session_on_javascript_alert

rails_session_on_javascript_alert

「–」以降は暗号化チェックデータなようなので、「***_session=」以降、「–」以下をデコート掛けてやれば取得できるっぽい。
rails_session_on_javasceipr_alert

rails_session_on_javasceipr_alert_with_base64

ここで問題が、、、

user_idの数字の羅列くらいはMarshal入れなくても無理やり取ってこれると思ったのですが無理でした。
RubyであればここでMarshal.load()を使えばObject化されてデータを取得できるんですが、
Javascriptに対応するライブラリが無い・・。

パワポアニメーションを動画へ変換

Sunday, February 15th, 2009

パワポアニメーションを動画へ変換って可能なんでしょうか。
パワポが動画変換機能みたいなものがあればいいのですが残念ながら無い・・。
そこで第一に思いつくので画面動画キャプチャー用ソフトで撮ってしまえ。
ってことで以下のソフトを検証。。

Display2AVI (シェアウェア)
http://www.vector.co.jp/soft/winnt/art/se368508.html
1780円。トライアル版あり。フレームレートなど細かい設定が可能。

CamStudio
http://nonn-et-twk.net/twk/CamStudio/
フリーなのに高機能です。Display2AVIとあまり遜色がない。

【結果】
 アニメーション無理・・。
どうしてもカクカクします。
アニメーションがないのであれば問題ないと思うけどスムーズな動きはしてくれません。

【対策方法】
 アニメーションしている様子を実際にビデオで撮ってしまう。

他良い方法ないのですかね。。

[ActionScript3 基本編] 入力フォーム生成 (リサイズに拡大・縮小)

Thursday, February 12th, 2009

ステージの幅に合わせて入力フォームを生成します。
入力フォームはTextFieldを使用してtypeをINPUT型に定義してあげるだけです。
HTMLと似てますね。
「wordwrap」で折り返すかの設定。
「multiline」で改行の設定を行います。

画面のリサイズ時に合わせてフィットするように拡大・縮小させます。
以下の行を追加します。

もっといい方法あるかもですが。。

[AMFonRails] 参考リンク集

Thursday, February 12th, 2009

RubyOnRailsとFlashとの連携用AMFプラグインの実装。
あまり導入している方がいないのか情報がだいぶ少ないです。

[参考サイト一覧]

■Micromedia Flash Remorting Support
http://www.adobe.com/support/flashremoting//documentation/using_flash_remoting.html#japanese
マクロメディア公式のFlashRemotingサポートページ。各種ドキュメントがそろえられています。

■Macromedia Flash Remoting コンポーネント
http://www.adobe.com/jp/products/flashremoting/downloads/components/#flr_fl8
ここでFlash Remoting コンポーネントがダウンロードできます。

■RubyAMF公式サイト
http://rubyamf.org/
一応公式サイトらしいですが、ブログ形式でライブラリのダウンロードはできるもののドキュメントはあまり充実していないです。
ライブラリに含まれているサンプル集が一番のドキュメントになりそうです。

■[BLOG] ADOBE DEVELOPER CONNECTION
http://www.adobe.com/jp/devnet/flex/articles/flex_plus_ll_07.html
クラスメソッド株式会社の篠崎 大地氏から各LL(軽量スクリプト言語)によるAMF実装方法が分かりやすく解説してある。Flexでのサンプルだけれど、AMFの背景知識も含めて説明するのでだいぶ参考になりました。

■Flash/AMF
http://wiki.minaco.net/index.php?Flash%2FAMF
各言語とAMFの比較表がおいてあります。

■AMF仕様書
http://download.macromedia.com/pub/labs/amf/amf3_spec_121207.pdf
AMFについての仕様書。英文です。

[RestOnRailsメモ] RailsでサクっとRestfulクライアント

Monday, February 9th, 2009

【実装方法】
とても簡単です。ActiveRerordと同じで、以下ようにActiveResourceを継承してあげればOK。

【テスト】
コンソールでテストしてみます。

実装がめちゃくちゃ早いです。。

【参考サイト】
・本家ドキュメント ActiveResource
http://api.rubyonrails.org/classes/ActiveResource/Base.html

[RestOnRailsメモ] RailsでサクっとRestfulサーバー

Monday, February 9th, 2009

【実装方法】
Railsが標準で対応してくれるのでジェネレーターでRest対応コードを生成してくれます。

Scaffold時にマッピングも自動的に行ってくれます。

以上で完了です。
各URLとメソッドの対応表は以下のようになります。

[RestOnRailsメモ] Restful調査

Wednesday, February 4th, 2009

RestfulなWEBサイトを構築。

中規模~なサイト構築を汎用的に作めためには、やはりとSoapプロトコルなど共通インターフェイスを用意して統一することで実装することができる。
SOAPかRESTかで迷いどころだが、Railsが標準で対応したRESTを試してみる事にする。

【Restful 概要】

【RESTFUL 参考サイト】

・ REST vs SOAP
http://www.xmlconsortium.org/wg/web2.0/teigensho/4–REST-SOAP.html

・ RESTとSOAP:Web 2.0時代に意識され始めた2種類のWebサービス
http://itpro.nikkeibp.co.jp/article/Watcher/20060315/232492/

・ 天使やカイザーと呼ばれて: 丸レクでREST on Railsについて話をしてきました
http://www.eisbahn.jp/yoichiro/2007/12/rest_on_rails.html

Google「syntaxhighlighter」を入れてみる。。

Sunday, February 1st, 2009

素晴らしい。。
多少変換速度は気になるものの、対応言語や手間を考えるとかなり良いです。
導入もとても簡単でした。

温泉
紅葉
旅行
動物園
花見