Ruby on Rails

Ruby on Railsの情報ページです。
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
架空線 - AERIAL LINE - : 第2話 「CUIとコビトとお姉さま」
http://www.aerialline.com/comics/ubunchu/episode02

久しぶりにのぞいてみたら、第二弾が発表されていました、
CUIのよさはわかっているけど、
スキルはかなり高度な物を要求されます。

じぶんはやっぱりGUIのほうが便利ですね、
色々と制限はありますが。
VirtualBox3.0が発表されている、WindowsXPにUbuntuをインストールしてみる。

VirtualBox3.0のトップページ
VirtualBox | Open source desktop virtualization | Open source software
http://www.sun.com/software/products/virtualbox/index.jsp

Ubuntuのトップページ
Home | Ubuntu Japanese Team
http://www.ubuntulinux.jp/




VirtualBoxのダウンロード
Sun VirtualBox - Downloads
http://dlc.sun.com/virtualbox/vboxdownload.html#windows

Ubuntu 8.04 LTS - 2011年4月までサポート
をダウンロード

Ubuntuのダウンロード
Ubuntuの入手 | Ubuntu Japanese Team
http://www.ubuntulinux.jp/download/

Windows用のVirtualBoxをダウンロード
ダウンロード後、解凍します。




インストール方法
VirtualBox3.0をインストール

VirtualBox3.0
ダウンロードした、exe実行ファイルを適当にインストール。
終了



インストール方法
OS(WindowsXP)の内部にOS(Ubuntu)をインストール

VirtualBox用仮想マシン | Ubuntu Japanese Team
http://www.ubuntulinux.jp/products/JA-Localized/virtualbox
ここを参考に

VirtualBox3.0を起動後新規ボタンで開始。

新規仮想マシンの作成
次へボタンをクリック

仮想マシン名とOSタイプ
名前
名前を入力します、自分の好きな名前をつけます。

オペレーティングシステム
Linux

OSタイプ
OSタイプは「Ubuntu」もしくは「Linux 2.6」選んで下さい。
次へ

メモリ
デフォルト値のままで
次へボタンをクリック

仮想ハードディスク
起動ディスク(プライマリマスター)(デフォルトでチェック済み)
「既存のハードディスクを使用」を選択
そのすぐ下にあるドロップダウンリストの右のフォルダアイコンをクリックし、
追加ボタンをクリック。
ダウンロードして解凍してある「Ubuntu-8.04-Japanese.vdi」を選び、
選択ボタンをクリック。
次へボタンをクリック

概要
新規仮想マシンは以下の設定で作成されます。
リストを確認
完了ボタンをクリック。


左の仮想OSリストから
Ubuntuを選択して設定ボタンをクリック。
自分の好きに設定する。
OKボタンをクリック。

起動ボタンをクリック。

キーボードの自動キャプチャ機能の警告画面が出てくる
右コントロールキーを押すことによって通常の操作に戻ることが出来る。
OKボタンをクリック。

バーチャル画面に移行し、
starting up...画面に移行

警告画面
ゲストOSの画面設定ダイアログを開き
32ビットカラーモードを選択してください。

マウス統合機能がサポートされています。



システム設定画面
システム設定
言語の選択
日本語(デフォルトで選択済み)
進むボタンをクリック。

時間帯の設定
Tokyo(デフォルトで選択済み)
進むボタンをクリック。

キーボードレイアウト
Japan
Japan
進むボタンをクリック。

あなたは誰ですか?
あなたの名前は何ですか?
ログインに使いたい名前は何ですか?
アカウントを安全に保つために、パスワードを入力してください。
それぞれ指示通りに入力

kumonopanya
******************

しばらくまつ

警告がでて
ディスクトップ画面が表示されて
インストール終了。



あとは、Ubuntu(OS内のOS)で自分のやりたいことをやってください。
(自分はrailsをこちらから開発できるか実験をする。)



p.s.
先日
Rails用SNS開発補助ツール Community Engineのインストール方法の報告
を書いたが、

どうやらWindowsXPからのRailsインストールだと、
ネイティブでインストールされない物があるようだ。と教えてもらった。
(真偽は定かではない、がWindowsからの開発は不評なのは確かなようだ。)
そのために
VirtualBox3をインストールして
Ubuntuからインストールしてみる。

それはまた次回に・・・



前回のインストール挑戦時の最後に出たエラーですが、
同じ悩みを持った人がいました。




Google グループ
CE "edge" + rails 2.3.2 tests failure - CommunityEngine | Google グループ
http://groups.google.com/group/communityengine/browse_thread/thread/12261c3301036fa9/a6deea463c9371bd?lnk=gst&q=NoMethodError+Time%3AClass#a6deea463c9371bd

で、同じ症状の人がいました。
その投稿に対する返事が




No, this is not normal; I have 100% passing tests in my edge-CE install, so
I assume there's something wrong with your setup. If , please file a bug on Lighthouse.Thanks,




機械翻訳
いや、これは正常です。私は 100 %自分のエッジでのテストに合格- CEをインストールすると、これが
私はそこで何か設定が悪いのと仮定します。もしそうでないのならば
その場合、 Lighthouse.Thanks上のバグをファイルしてください




自力翻訳
いいえ、それは正常じゃありません。
私がインストールしたCEは全部(100%)テストに合格しています。
したがって、あなたのセットアップ方法はいくつか問題があるようです。
もしも、自分が絶対間違ってないと確信しているのならば、
Lighthouseにバグを送ってください。
お願いします。




Lighthouseってなんだべ?
灯台じゃ意味が通らんし・・・




同じ人がいたということは、テンプレートエンジンが完全じゃなかったのだろうか?
(テンプレートエンジンはRails2.3からの新機能で、インストール方法の指定ができるファイル)




bborn's communityengine at master - GitHub
http://github.com/bborn/communityengine/tree/master
CommunityEngine [v1.0.2]



ここの
Getting CommunityEngine Running
から
SHORT VERSION:
という方法でインストールしたが、
LONG VERSION:
次はこっちのバージョンでインストールしてみよう。





つづく・・・


Rails用SNS開発補助ツール Community Engineのインストール方法 まとめと詳細。

MOONGIFT: ≫ Ruby on Rails製のSNS「CommunityEngine」:オープンソースを毎日紹介
http://www.moongift.jp/2008/05/communityengine/
ここを見て興味があったのでインストールしてみる。
ただ、これを書いている最中Rails2.1からRails2.3に対応バージョンを上げたので
インストールがめちゃくちゃ簡単に!

どう簡単か?と言えば、
コマンド一行でほぼインストールが終わります。

rails your_app_name -m http://www.communityengine.org/install_template.rb

これだけで下記は蛇足。
恐るべしテンプレートインストール!
色々調べるだけで何日もかかったのに、
最後は一行にまとまるとは・・・




Community Engine | A Social Networking Plugin for Ruby on Rails
http://www.communityengine.org/

bborn's communityengine at master - GitHub
http://github.com/bborn/communityengine/tree/master

Community Engine - Documentation
http://www.communityengine.org/documentation.html
(このドキュメントはRails2.1用)

Ruby on Rails

Netbenasのインストールは
NetBeans
意外にかんたん!Ruby on RailsとNetBeansのインストール:企業IT部門の変革を支援するエンタープライズ実践情報サイト EnterpriseZine
http://enterprisezine.jp/article/detail/739
http://enterprisezine.jp/article/detail/739?p=2
を参考に

これを書いている最中
Community EngineがRails2.3に対応した。
バージョンv1.0=>v1.0.2へ

なんとテンプレートエンジンに対応したことにより
コマンド一発でインストールが完了する
NetBeansは現在の所rails2.3のテンプレートコマンドに対応していないようなので
コマンドプロンプトからインストールする。

テンプレートエンジンを利用してのインストールは
問い合わせに答えながらインストールしていく方法で
サイトの名前とデプロイ先を聞かれる。





Requirements:

- RAILS VERSION 2.3.2
- ImageMagick (>6.4)
- Several gems:
desert
rmagick
hpricot
htmlentities
rake 0.8.3
haml 2.0.5
aws-s3 (if using s3 for photos)


上記のバージョンあわせが完了したら

rails your_app_name -m http://www.communityengine.org/install_template.rb

でインストール開始
サイト名を聞かれて
デプロイ先を聞かれて。
最後に吐き出されるテストコマンドを実行して。
終了。



以下詳細


gemのインストール開始。
NetBeans
ツール>>rubygem

まず設定タブで
すべてのGEMバージョンをフェッチする
をチェックする。
インストール時にネット上にあるすべてのバージョンを選択インストールできるようになる。

新しいgemタブに移動




インストール条件を確認。




- RAILS VERSION 2.3.2
- ImageMagick (>6.4) <=バージョン6.4以上ならなんでもok
- Several gems:
desert
rmagick
hpricot
htmlentities
rake 0.8.3
haml 2.0.5
aws-s3 (if using s3 for photos)




ほかにアプリケーションを開発していないのなら
バージョンの混在を避けるため。
たとえば、
rake 0.8.3
とあったら

インストール済みタブから
rakeをアンインストールして

新しいgemタブから
rakeの0.8.3バージョンを指定してインストールする。





検索してもgemが表示されない場合は、
時間をおいて
gemを再読込 を行う。





一番問題だったのは
ImageMagick

ImageMagickとRMagickのバージョンを同じにしないとおこられるので、

二つがパックになっているのを見つけ出して
インストールした。

参考URL
(ruby)(WindowsXP + ImageMagick + RMagick の 環境を作ってみた) - もらかなです。
http://d.hatena.ne.jp/morakana/20090614/1244969850

RubyForge: RMagick: Project Info
http://rubyforge.org/projects/rmagick/

RubyForge: RMagick: ファイルリスト
http://rubyforge.org/frs/?group_id=12&release_id=35951

2.10.0 binary gem for Ruby 1.8.6 2009-06-20 16:13
RMagick-2.10.0-ImageMagick-6.5.3-10-Q8.zip 23.1 MB 270 i386 .zip

ImageMagickとRMagickが一緒にまとめてあるファイルがある。



ImageMagickはdllが必要らしく。
exeコマンドから直接インストールで済ませた。






インストール条件が整ったら
コミュニティエンジンのインストール開始。

インストール場所を
C:\App
にきめて
フォルダを作成。

Railsアプリネームは
Matiawase
に決定

サイトネームは
Matiai
に決定






コマンドプロンプトを立ち上げ

cd ../..
cd App

バージョン確認
C:\App>rails -v
Rails 2.3.2


rails Matiawase -m http://www.communityengine.org/install_template.rb


途中で名前を要求される
これはトップページに表示されるサイトの名前

Matiai
と入力

デプロイ先のURL
(アップロードするサーバーのurlを入力)
http://www.xn--b9jl2lx66ld9l.com/

www.xn--b9jl2lx66ld9l.com




デプロイとは 【deploy】 - 意味/解説/説明/定義 : IT用語辞典
http://e-words.jp/w/E38387E38397E383ADE382A4.html
デプロイ
デプロイとは、ネットワークアプリケーションやWebサービスなどを、利用可能なように準備すること。発行。

「インストール」に近い意味だが、インストールはコンピュータにソフトウェアを導入することを意味するのに対して、デプロイメントは、外部からネットワーク経由で利用されるソフトウェアや、他のソフトウェアから参照されるコンポーネントなどを、利用可能な状態にするという意味合いが強い。







実行時のログ




create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create config/initializers
create config/locales
create db
create doc
create lib
create lib/tasks
create log
create public/images
create public/javascripts
create public/stylesheets
create script/performance
create test/fixtures
create test/functional
create test/integration
create test/performance
create test/unit
create vendor
create vendor/plugins
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create Rakefile
create README
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create config/database.yml
create config/routes.rb
create config/locales/en.yml
create config/initializers/backtrace_silencers.rb
create config/initializers/inflections.rb
create config/initializers/mime_types.rb
create config/initializers/new_rails_defaults.rb
create config/initializers/session_store.rb
create config/environment.rb
create config/boot.rb
create config/environments/production.rb
create config/environments/development.rb
create config/environments/test.rb
create script/about
create script/console
create script/dbconsole
create script/destroy
create script/generate
create script/runner
create script/server
create script/plugin
create script/performance/benchmarker
create script/performance/profiler
create test/test_helper.rb
create test/performance/browsing_test.rb
create public/404.html
create public/422.html
create public/500.html
create public/index.html
create public/favicon.ico
create public/robots.txt
create public/images/rails.png
create public/javascripts/prototype.js
create public/javascripts/effects.js
create public/javascripts/dragdrop.js
create public/javascripts/controls.js
create public/javascripts/application.js
create doc/README_FOR_APP
create log/server.log
create log/production.log
create log/development.log
create log/test.log
applying template: http://www.communityengine.org/install_template.rb
Please enter the application's name:



ここでサイト名を入力



Matiai


executing rm public/index.html from C:/App/Matiawase
executing rm public/favicon.ico from C:/App/Matiawase
running git init
running git add .
executing touch tmp/.gitignore log/.gitignore vendor/.gitignore from C:/App
Matiawase
executing find . -type d -empty | grep -v "vendor" | grep -v ".git" | grep
v "tmp" | xargs -I xxx touch xxx/.gitignore from C:/App/Matiawase
file .gitignore
gem desert
gem rmagick
gem hpricot
gem htmlentities
gem haml
gem aws-s3
rake gems:install
C:/Ruby/bin/rails: No such file or directory - sudo rake gems:install RAILS_ENV
development
plugin community_engine
running git submodule init
running git submodule update
route map.routes_from_plugin :community_engine
[CE SETUP] Modifying your environment.rb and environments files to work with C


[CE SETUP] Modifying environment files ...

Please enter the url where you plan to deploy this app (use 'exam
le.com' for now if you don't know yet):



ここでデプロイ先を入力



www.xxxxxxxxxxxx.com


file config/application.yml
executing ruby script/generate plugin_migration from C:/App/Matiawase
rake db:migrate
capifying
C:/Ruby/bin/rails: No such file or directory - capify .
running git add .
running git commit -a -m 'Initial commit'
SUCCESS!
Next, you should probably run `rake test` and `rake community_engine:test` and
ake sure all tests pass.
applied http://www.communityengine.org/install_template.rb




Railsアプリ確認
C:\App>dir
Matiawase





最後のメッセージとして、
Next, you should probably run `rake test` and `rake community_engine:test` and make sure all tests pass.

が表示さるので、実行する。



テスト1
cd matiawase
rake test




実行時のログ




(in C:/App/Matiawase)
C:/Ruby/bin/ruby -Ilib;test "C:/Ruby/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"
C:/Ruby/bin/ruby -Ilib;test "C:/Ruby/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"
C:/Ruby/bin/ruby -Ilib;test "C:/Ruby/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"




テスト2
rake community_engine:test

エラーが出た。





実行時のログ




Finished in 318.125 seconds.

1) Error:
test_should_get_index(StatisticsControllerTest):
NoMethodError: undefined method `today' for Time:Class
vendor/plugins/community_engine/app/controllers/statistics_controller.rb:9:in `index'
C:\App\Matiawase\vendor/plugins/community_engine/app/controllers/statistics_controller.rb:9:in `index'
C:\App\Matiawase\vendor\plugins\community_engine\app\controllers
haml (2.0.5) lib/sass/plugin/rails.rb:19:in `process'
/vendor/plugins/community_engine/test/functional/statistics_controller_test.rb:14:in `test_should_get_index'

2) Error:
test_should_get_stats_if_admin(UsersControllerTest):
NoMethodError: undefined method `today' for Time:Class
vendor/plugins/community_engine/app/controllers/users_controller.rb:412:in `statistics'
haml (2.0.5) lib/sass/plugin/rails.rb:19:in `process'
/vendor/plugins/community_engine/test/functional/users_controller_test.rb:418:in `test_should_get_stats_if_admin'

3) Error:
test_should_show_user_statistics(UsersControllerTest):
NoMethodError: undefined method `today' for Time:Class
vendor/plugins/community_engine/app/controllers/users_controller.rb:412:in `statistics'
haml (2.0.5) lib/sass/plugin/rails.rb:19:in `process'
/vendor/plugins/community_engine/test/functional/users_controller_test.rb:448:in `test_should_show_user_statistics'

486 tests, 828 assertions, 0 failures, 3 errors
rake aborted!
Command failed with status (1): [C:/Ruby/bin/ruby -Ilib;lib "C:/Ruby/lib/ru...]

(See full trace by running task with --trace)

C:\App\Matiawase>





ログ中に
NoMethodErrorとあるので
定義されていないエラーのようだ。




Command failed with status (1): [C:/Ruby/bin/ruby -Ilib;lib "C:/Ruby/lib/ru...]
をみると
後ろが途切れている・・・



NetBeansからテストをしてみる。
プロジェクトのツリーから右クリックして表示されるメニューの
テストを実行してみると
エラーは出てこなかった。




実行時のログ




(in C:/App/Matiawase)
C:/Ruby/bin/ruby -Ilib;test -r"C:/Program Files/NetBeans 6.5.1/ruby2/nb_test_runner.rb" "C:/Ruby/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"
C:/Ruby/bin/ruby -Ilib;test -r"C:/Program Files/NetBeans 6.5.1/ruby2/nb_test_runner.rb" "C:/Ruby/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"
C:/Ruby/bin/ruby -Ilib;test -r"C:/Program Files/NetBeans 6.5.1/ruby2/nb_test_runner.rb" "C:/Ruby/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"

0.0 秒で完了しました。
0 個のテスト、0 個の失敗、0 個のエラー




rake community_engine:test
でエラーが出たところを
NetBeansからテストをおこなう。

エラーログから

/vendor/plugins/community_engine/test/functional/statistics_controller_test.rb:14:in `test_should_get_index'
/vendor/plugins/community_engine/test/functional/users_controller_test.rb:418:in `test_should_get_stats_if_admin'
/vendor/plugins/community_engine/test/functional/users_controller_test.rb:448:in `test_should_show_user_statistics'

これらがエラーの出るテストなので、

NetBeansのプロジェクトウィンドウから
プロジェクト>>ベンダー>>plugins>>community_engine>>test>>functional

で上記テストファイルを実行したら
同じエラーが出てくるのを確認。

エラーが出たらどうするのかは
知らないのでこれから勉強・・・




NoMethodError: undefined method `today' for Time:Class
とあるので
Time:Classを含むファイルをrequireをすればいいように思うが、
どのファイルに書けばいいのか?
そもそもこの方法で解決するのかわからない。
みんなどのようにしているのだろう?

require 'time'
??
これをどこに?



つづく・・・





p.s.
NoMethodError: undefined method `today' for Time:Class

NoMethodError:だから
なにかインストールが足りないのだろうが、
どう対応したらいいかわからない・・・

もし、知っている方居たらコメントくださいm(__)m


続きを読む
JRuby on Rails at GAE for WindowsXPで実行

Google App Engine - Google Code
http://code.google.com/intl/ja/appengine/
Early Lookがかかっていたが試してみた。
(つまり使用許可はまだ無いので、再現をローカル環境まで)






Rails on GAE - urekatのスカンク日記3
http://d.hatena.ne.jp/urekat/20090616/1245172681
上記をトレースしてみた。
GAEの利用許可がないのでローカルで実行まで。

上記URLの環境はmacのようだが、自分はWindowsXPで実行






環境は
ウィンドウズXP

java1.6
Java SE Downloads - Sun Developer Network (SDN)
http://java.sun.com/javase/downloads/index.jsp
java -version
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) Client VM (build 11.3-b02, mixed mode, sharing)

cygwin1.7
Cygwin Information and Installation
http://cygwin.com/

teraterm
窓の杜 - Tera Term
http://www.forest.impress.co.jp/lib/inet/servernt/remote/utf8teraterm.html
(cygwin1.7で利用していると日本語のコピペが出来ない・・・
viなどは日本語を利用できる。ファイル名等を日本語は使用しないことで対処する)

ユーザーフォルダ
C:\cygwin\home\hi

インストール先フォルダ
C:\cygwin\home\hi\tmp

シェル
zsh

JRubyがほかの場所にインストールされていないか、
他の場所にパスを通していないかを調べておく。






インストール先フォルダの作成(C:\cygwin\home\hi\tmp)
mkdir tmp

エイリアス
利用するgemを指定
alias jgem='jruby $JRUBY_HOME/bin/gem'

↑jrubyが同じ環境で2つ以上インストールしてある時に必要。






JRubyのインストール

cd ~/tmp
wget http://dist.codehaus.org/jruby/1.3.1/jruby-bin-1.3.1.tar.gz
tar xvzf jruby-bin-1.3.1.tar.gz
ln -s jruby-1.3.1 jruby







GAEJのインストール

wget http://googleappengine.googlecode.com/files/appengine-java-sdk-1.2.1.zip
unzip appengine-java-sdk-1.2.1.zip






railsなどをインストール

jgem install rails -v=2.3.2
jgem install jruby-openssl
jgem install warbler
jgem install rake
jgem install pluginize


jgem install ???

その他利用するプラグイン






~/.zshrcを編集

export JRUBY_HOME=~/tmp/jruby-1.3.1
export GAEJ_HOME=~/tmp/appengine-java-sdk-1.2.1
export PATH=$PATH:$JRUBY_HOME/bin:$GAEJ_HOME/bin
#export JAVA_HOME=C:\Program Files\Java\jdk1.6.0_13

設定ファイルの再読込
zsh

パス確認
echo $JRUBY_HOME
/home/hi/tmp/jruby-1.3.1

echo $GAEJ_HOME
/home/hi/tmp/appengine-java-sdk-1.2.1

echo $PATH
echo $JAVA_HOME






バージョン&パスの確認 コマンド
java -version
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) Client VM (build 11.3-b02, mixed mode, sharing)

jruby -v
jruby 1.3.1 (ruby 1.8.6p287) (2009-06-15 2fd6c3d) (Java HotSpot(TM) Client VM 1.6.0_13) [x86-java]

GAEのパス確認(ローカルサーバー起動コマンド)
(※このコマンドはウィンドウズのコマンドプロンプトで実行する。
コマンドプロンプトから実行するのでフルパス表示。)
C:\cygwin\home\hi\tmp\appengine-java-sdk-1.2.1\bin\dev_appserver.cmd C:\cygwin\home\hi\tmp\appengine-java-sdk-1.2.1\demos\guestbook\war

ローカルサーバーで起動確認
http://localhost:8080/








この後は
簡単なRailsアプリを作って
GAE/Jでどのように使うのか?
一番の問題は今までsqlight3やMySQLでやっていたデータの管理を
どのように設計していくのか?

ファイル数制限があるので
warなどのプラグインを使ってファイルをまとめる方法や。

その他言語の動作
JAVA、JSON、AJAX、Javascript、AIR
などのウェブアプリケーションは使えるようになるのか?
等々。


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。