先週の『Parameterの"id"が"update"になる謎。』はやはり単純なミス
<%= start_form_tag({:action => 'update', :id => @schedule}, :multipart => true) %>
引数で :id => @schedule の指定を忘れていました。
さて、次のエラーは。
NameError in SchedulesController#create
uninitialized constant FILE_PATH
/1.8/gems/activesupport-1.4.3/lib/active_support/dependencies.rb:266:in `load_missing_constant'
/1.8/gems/activesupport-1.4.3/lib/active_support/dependencies.rb:452:in `const_missing'
/1.8/gems/activesupport-1.4.3/lib/active_support/dependencies.rb:464:in `const_missing'
const_missing
>定義されていない定数を参照したときに Ruby がこのメソッドを呼びます。
>参照した定数名の Symbol が引数に渡されます。
>デフォルトではこのメソッドは例外 NameError を発生させます。
こちらもケアレスミス。複数名の定数を呼び出すところを単数名で呼んでいた。
ボンミスは良くしますが、今日はちょっと多すぎて自分でも嫌になるなぁ。
風邪のせいとは言えませんが(言ってるw) ぼ〜っとしすぎです。
その後もケアレ・スミス氏と格闘して、「ログイン機能」の追加までたどり着きました。
教本ではLoginGeneratorを使っているのですが、もう古く、
現在 認証系を作る場合は『Acts as Authenticated』を使用するとのことで、
とりあえずPluginはインストールしておいたので・・・
明日は Acts as Authenticated を調べながら自分でやってみようと思います。
□明日のための参考サイト
[本家] Acts as Authenticated
Ruby on Rails: ログイン機能を作る (acts as authenticated 編)
Acts as Authenticatedまとめ
Acts as Authenticated plugin を少しだけセキュアにする
あとで読むRailsのススメ acts_as_authenticated
2007年10月15日月曜日
2007年10月12日金曜日
スケジューラー 続き
教本を進めていくと、月間表示を作成したので
「scaffoldで生成されたlist.rhtmを削除する」と言う項目に従って
list.rhtmlを消すと、エントリを削除できるリンクが無くなってしまった。
教本では後々付け加えるのかもしれないけれど、ちょっと挑戦してみようと思って作業を始める。
まずはedit.rhtmlに
<% form_tag :action => 'destroy', :id => @schedule do %>
<%= submit_tag '削 除' %>
<% end %>
としてみると。簡単に削除ができた。
「削除しますか?」の確認画面が欲しいと思い:confirmを使うためlink_toにして
(最初はform_tagに入れようとしていたけど、うまくいかなかった)
<%= link_to("Destroy",{ :action => "destroy", :id => @schedule }, :confirm => "Are you sure you want to delete this entry?", :post => true %>
と追加してみる。ヨシ、できた。
「Are you sure you want to delete this entry?」にタイトルを入れたくなった。
:confirm => "『 タイトル:#{@schedule.title} 』のエントリを削除しますか?"
でOKだった。
private
def set_file_name
@file = params[:schedule][:file_name]
params[:schedule][:file_name] = @file.original_filename
end
の部分でoriginal_filenameが見付からないというエラーが出たが、
start_form_tagの書き方が教本の頃より変わったらしい。
<%= start_form_tag('create', :multipart => true) %>
と書き直してOK。
次はなぜか
Parameterの"id"が"update"になる謎。
ActiveRecord::RecordNotFound in SchedulesController#edit
Couldn't find Schedule with ID=update
workspace/scheduler/app/controllers/schedules_controller.rb:80:in `find_schedule'
で止まっているし、idに"update"が入るというのはスクリプトの打ち間違えかな
週明けに格闘してみようと思います。
□ Javaから見たRuby on Rails
「scaffoldで生成されたlist.rhtmを削除する」と言う項目に従って
list.rhtmlを消すと、エントリを削除できるリンクが無くなってしまった。
教本では後々付け加えるのかもしれないけれど、ちょっと挑戦してみようと思って作業を始める。
まずはedit.rhtmlに
<% form_tag :action => 'destroy', :id => @schedule do %>
<%= submit_tag '削 除' %>
<% end %>
としてみると。簡単に削除ができた。
「削除しますか?」の確認画面が欲しいと思い:confirmを使うためlink_toにして
(最初はform_tagに入れようとしていたけど、うまくいかなかった)
<%= link_to("Destroy",{ :action => "destroy", :id => @schedule }, :confirm => "Are you sure you want to delete this entry?", :post => true %>
と追加してみる。ヨシ、できた。
「Are you sure you want to delete this entry?」にタイトルを入れたくなった。
:confirm => "『 タイトル:#{@schedule.title} 』のエントリを削除しますか?"
でOKだった。
private
def set_file_name
@file = params[:schedule][:file_name]
params[:schedule][:file_name] = @file.original_filename
end
の部分でoriginal_filenameが見付からないというエラーが出たが、
start_form_tagの書き方が教本の頃より変わったらしい。
<%= start_form_tag('create', :multipart => true) %>
と書き直してOK。
次はなぜか
Parameterの"id"が"update"になる謎。
ActiveRecord::RecordNotFound in SchedulesController#edit
Couldn't find Schedule with ID=update
workspace/scheduler/app/controllers/schedules_controller.rb:80:in `find_schedule'
で止まっているし、idに"update"が入るというのはスクリプトの打ち間違えかな
週明けに格闘してみようと思います。
□ Javaから見たRuby on Rails
2007年10月11日木曜日
db:migrate
文字化けはとりあえずDBの作り直しが良いだろうと思ったので作りなおしてみると
db:migrate実行時に
/ruby/gems/1.8/gems/activerecord/lib/active_record/vendor/mysql.rb:523:in `read'
rake aborted!
42000だけど、以前のエラーとはちょっと違うみたい。
>'scheduler_development' なんてデータベースは知りません.
って。知らないだろう。
だって、db:migrateで作ってくれるんじゃないの!?
ということで、ググり
Unknown database bug in Chapter 2 1
>Creating the database is perhaps the easiest way to go.
そうですか。やはり。なんだか腑に落ちないけど。
MySQLでcreateして、問題なくdb:migrateできました。
そして、昨日悩まされていたDBの文字化けについても完治です!
----- db:migrate についての理解不足でした。
データベースを先に作っておかないと、db:migrateもできないのですね。
はい。
CalendarHelperを使って、なんとかカレンダー表示までたどり着きました。
途中、『 app/controllers/schedules_controller.rb 』に
月を表示させる為のメソッド"month"を作る際に
何も考えず一番最後に追加してしまい、なかなか表示ができませんでしたが、
カレンダー表示をする際にどこまでメソッドを呼び出しているのか
今いち分からないので、とりあえず頭に追加することで解決。
・・・index,list,show,new,creat,edit,updateにmonthを追加するのに
頭もケツもあまり関係ないように思えるが、どこが作用しているのかな??
CSSも設置して、とりあえず形になってきたので
やっと面白くなってきました!!
db:migrate実行時に
/ruby/gems/1.8/gems/activerecord/lib/active_record/vendor/mysql.rb:523:in `read'
rake aborted!
42000だけど、以前のエラーとはちょっと違うみたい。
>'scheduler_development' なんてデータベースは知りません.
って。知らないだろう。
だって、db:migrateで作ってくれるんじゃないの!?
ということで、ググり
Unknown database bug in Chapter 2 1
>Creating the database is perhaps the easiest way to go.
そうですか。やはり。なんだか腑に落ちないけど。
MySQLでcreateして、問題なくdb:migrateできました。
そして、昨日悩まされていたDBの文字化けについても完治です!
----- db:migrate についての理解不足でした。
データベースを先に作っておかないと、db:migrateもできないのですね。
はい。
CalendarHelperを使って、なんとかカレンダー表示までたどり着きました。
途中、『 app/controllers/schedules_controller.rb 』に
月を表示させる為のメソッド"month"を作る際に
何も考えず一番最後に追加してしまい、なかなか表示ができませんでしたが、
カレンダー表示をする際にどこまでメソッドを呼び出しているのか
今いち分からないので、とりあえず頭に追加することで解決。
・・・index,list,show,new,creat,edit,updateにmonthを追加するのに
頭もケツもあまり関係ないように思えるが、どこが作用しているのかな??
CSSも設置して、とりあえず形になってきたので
やっと面白くなってきました!!
2007年10月10日水曜日
テーブルが作れるようになった・・・先週からの続き。
MySQLのデータベース権限を指定してあげることでrake db:migrateにて
テーブルが作れるようになった・・・先週からの続き。
スケジューラーのチュートリアルを完成させようと思います。
が、scaffoldでMVCを構築してもらい、「 $ rake 」でテストをしたら
出ました エラー ・・・ 涙
$ rake
(in /home/b-tech01/scheduler)
/usr/bin/ruby1.8 -Ilib:test "/usr/lib/ruby/1.8/rake/rake_test_loader.rb" "test/unit/schedule_test.rb"
Loaded suite /usr/lib/ruby/1.8/rake/rake_test_loader
Started
.
Finished in 0.051288 seconds.
1 tests, 1 assertions, 0 failures, 0 errors
/usr/bin/ruby1.8 -Ilib:test "/usr/lib/ruby/1.8/rake/rake_test_loader.rb" "test/functional/schedules_controller_test.rb"
Loaded suite /usr/lib/ruby/1.8/rake/rake_test_loader
Started
EEEEEEEE
Finished in 0.066953 seconds.
1) Error:
test_create(SchedulesControllerTest):
StandardError: No fixture with name 'first' found for table 'schedules'
/home/b-tech01/scheduler/config/../vendor/rails/activerecord/lib/active_record/fixtures.rb:489:in `schedules'
./test/functional/schedules_controller_test.rb:15:in `setup_without_fixtures'
/home/b-tech01/scheduler/config/../vendor/rails/activerecord/lib/active_record/fixtures.rb:562:in `setup'
−−−− 略 −−−− 同じエラーが8つ −−−−
8 tests, 0 assertions, 0 failures, 8 errors
/usr/bin/ruby1.8 -Ilib:test "/usr/lib/ruby/1.8/rake/rake_test_loader.rb"
rake aborted!
Test failures
エラーで該当している箇所を見ても、もちろん追いきれなかったので、
『StandardError: No fixture with name 'first'』をググってみた。
Railsのテストが通らない場合
上記URLの " その一 " を実行したら 即、解決!
> scaffoldを利用した場合、test/fixturesフォルダにfixtureされるymlファイルが生成されます。
> が、なぜかこのファイル内に :firstがうめこまれていないのです。それなのにテストコードのほうは
>
> @first_id = hogehoges(:first).id
>
> で、:firstを探しにいっているので見つからずにエラーになるわけです。不思議ですねぇ
本当に、不思議ですねぇ。
無事表示ができるようになったところで教本の通り、
『一覧表示画面のカスタマイズ』をしてみます。
まず最初のエラーは、簡単なsyntax error
schedules_controller.rbに追記する際に「 , 」を忘れていた。
そして次。
テスト用のデータベースにデータを入れるため/test/fixtures/schedules.ymlに
schedule1:
id: 1
datetime: 2007-10-10 12:00
title: 勉強1
content: 今日も勉強1
schedule2:
id: 2
datetime: 2007-10-11 12:00
title: 勉強2
content: 今日も勉強2
と記述するものの、やはりエラーーーー
Fixture::FormatError: ../test/fixtures/schedules.yml. Please note that YAML must be consistently indented using spaces. Tabs are not allowed.
ArgumentError: syntax error on line 3, col 10: ` datetime: 2007-11-11 12:43:00'
tabは使ってないから大丈夫。・・・と思っていたら、
記述した「 id: 1 」の前にスペースを入れ忘れていた・・・
schedule1:
id: 1 ←←← スペースが入ってない!
datetime: 2007-10-10 12:00
title: 勉強1
content: 今日も勉強1
このケアレスミス、一人だったらほぼ気づけないと思う(汗
そして、現在MySQLの日本語文字化けと格闘中。
● [MySQL] 文字化け問題を本気で直す
を参考にしてみるが、現在もまだ文字化け「????」中。
SQLite3にして先に進んだ方が良いかなぁ・・・とは思いつつも
MySQLでやってみてエラーをたくさん経験して、今のうちに
自分が弱いところなどを知るのも良いかと思ってます。
でも、明日で最後にするつもりです・・・
さきほどまでコマンドプロンプトで作っていたプロジェクトを
Aptanaにインポートしてやっていて、rakeフォルダの中にrakeフォルダ・・・
と意味の分からないことになっていたのが気になっていたので、
Aptanaで最初から同じところまで作ってrakeでテストしました。
・・・が、やはり文字化けしてました。
今日はここまでで、明日頑張ります。
でも、Aptanaの使いかたが分かりつつあるので
無駄ではない!ハズ・・・
テーブルが作れるようになった・・・先週からの続き。
スケジューラーのチュートリアルを完成させようと思います。
が、scaffoldでMVCを構築してもらい、「 $ rake 」でテストをしたら
出ました エラー ・・・ 涙
$ rake
(in /home/b-tech01/scheduler)
/usr/bin/ruby1.8 -Ilib:test "/usr/lib/ruby/1.8/rake/rake_test_loader.rb" "test/unit/schedule_test.rb"
Loaded suite /usr/lib/ruby/1.8/rake/rake_test_loader
Started
.
Finished in 0.051288 seconds.
1 tests, 1 assertions, 0 failures, 0 errors
/usr/bin/ruby1.8 -Ilib:test "/usr/lib/ruby/1.8/rake/rake_test_loader.rb" "test/functional/schedules_controller_test.rb"
Loaded suite /usr/lib/ruby/1.8/rake/rake_test_loader
Started
EEEEEEEE
Finished in 0.066953 seconds.
1) Error:
test_create(SchedulesControllerTest):
StandardError: No fixture with name 'first' found for table 'schedules'
/home/b-tech01/scheduler/config/../vendor/rails/activerecord/lib/active_record/fixtures.rb:489:in `schedules'
./test/functional/schedules_controller_test.rb:15:in `setup_without_fixtures'
/home/b-tech01/scheduler/config/../vendor/rails/activerecord/lib/active_record/fixtures.rb:562:in `setup'
−−−− 略 −−−− 同じエラーが8つ −−−−
8 tests, 0 assertions, 0 failures, 8 errors
/usr/bin/ruby1.8 -Ilib:test "/usr/lib/ruby/1.8/rake/rake_test_loader.rb"
rake aborted!
Test failures
エラーで該当している箇所を見ても、もちろん追いきれなかったので、
『StandardError: No fixture with name 'first'』をググってみた。
Railsのテストが通らない場合
上記URLの " その一 " を実行したら 即、解決!
> scaffoldを利用した場合、test/fixturesフォルダにfixtureされるymlファイルが生成されます。
> が、なぜかこのファイル内に :firstがうめこまれていないのです。それなのにテストコードのほうは
>
> @first_id = hogehoges(:first).id
>
> で、:firstを探しにいっているので見つからずにエラーになるわけです。不思議ですねぇ
本当に、不思議ですねぇ。
無事表示ができるようになったところで教本の通り、
『一覧表示画面のカスタマイズ』をしてみます。
まず最初のエラーは、簡単なsyntax error
schedules_controller.rbに追記する際に「 , 」を忘れていた。
そして次。
テスト用のデータベースにデータを入れるため/test/fixtures/schedules.ymlに
schedule1:
id: 1
datetime: 2007-10-10 12:00
title: 勉強1
content: 今日も勉強1
schedule2:
id: 2
datetime: 2007-10-11 12:00
title: 勉強2
content: 今日も勉強2
と記述するものの、やはりエラーーーー
Fixture::FormatError: ../test/fixtures/schedules.yml. Please note that YAML must be consistently indented using spaces. Tabs are not allowed.
ArgumentError: syntax error on line 3, col 10: ` datetime: 2007-11-11 12:43:00'
tabは使ってないから大丈夫。・・・と思っていたら、
記述した「 id: 1 」の前にスペースを入れ忘れていた・・・
schedule1:
id: 1 ←←← スペースが入ってない!
datetime: 2007-10-10 12:00
title: 勉強1
content: 今日も勉強1
このケアレスミス、一人だったらほぼ気づけないと思う(汗
そして、現在MySQLの日本語文字化けと格闘中。
● [MySQL] 文字化け問題を本気で直す
を参考にしてみるが、現在もまだ文字化け「????」中。
SQLite3にして先に進んだ方が良いかなぁ・・・とは思いつつも
MySQLでやってみてエラーをたくさん経験して、今のうちに
自分が弱いところなどを知るのも良いかと思ってます。
でも、明日で最後にするつもりです・・・
さきほどまでコマンドプロンプトで作っていたプロジェクトを
Aptanaにインポートしてやっていて、rakeフォルダの中にrakeフォルダ・・・
と意味の分からないことになっていたのが気になっていたので、
Aptanaで最初から同じところまで作ってrakeでテストしました。
・・・が、やはり文字化けしてました。
今日はここまでで、明日頑張ります。
でも、Aptanaの使いかたが分かりつつあるので
無駄ではない!ハズ・・・
2007年10月4日木曜日
No such file or directory - /tmp/mysql.sockについて
ちょっと視点を変えて下記を試してみましたが
・/var/run/mysqld/mysqld.sock のリンクを作成して mysql.sock とリンク名を変更
・RoRで作りかけアプリの中 /scheduler/tmp に放りこんでみる
・/scheduler/config/database.ymlに昨日追加した
「socket: /var/run/mysqld/mysqld.sock」の一文を削除
・$ rake db:migrate を実行してみる。
→ やっぱりダメ!
database.ymlをもう一度見てみる。
コメントには「MySQLのバージョンは4.0と5.0がお勧め」って書いてある。
バージョンは 5.0.38 だから問題なさそう。
database.ymlの socket: 指示を消すと rake はどこから
「/tmp/mysql.sock」だと命令されているのか?
ググってみると
☆ MySQLのソケットの位置はどうやって指定する?
> 1. 引数
> 2. 環境変数 MYSQL_UNIX_PORT
> 3. デフォルト値 /tmp/mysql.sock
> の順でソケットの位置を見ていることがわかった。
だから、やっぱり、scheduler/config/database.ymlに
「socket: /var/run/mysqld/mysqld.sock」って追加すればいいのでは??
ううう。
自分的 FAQ (よくある質問とその回答)
今までやっていたことと同じような感じですが、
>4.WEBrick を再起動
これが気になります。
□WEBrick 起動コマンド
$ ruby ./script/server
http://localhost:3000/確認。
問題なく立ち上がってます。
もう一度
$ rake db:migrate
(in /home/b-tech01/scheduler)
rake aborted!
#42000 Access denied for user 'rails'@'localhost' to database 'scheduler_development'
あー やっとエラーの内容が変わりました!
たぶん、socketは通った(?)
次はMySQLのエラーが〜
MySQLの「#42000Access denied for user ''@'localhost' to database 'sample'」というエラー
>「grant」文で、作ったデータベースで、ユーザー「recipe3」に
>アクセス権減を与える訳ですが、僕はここの「recipe3@localhost;」という
>箇所をチュートリアルのままやっていたので「recipe@localhost;」としたままでした。
との一文・・・で、どう解決されたのだろう・・・
私もチュートリアルの言うままdatabase.ymlを
adapter: mysql
database: scheduler_development
username: rails
password:
host: localhost
encoding: utf8
socket: /var/run/mysqld/mysqld.sock
としたのですが、「'rails'@'localhost'」でエラーが出ているということは
アクセス権の問題?まだテーブル作ってませんが・・・
RubyOnRails を使ってみる 【第 2 回】 (続・RubyOnRails を使ってみる)
データベースの設定
↑ここに答えがありました!!!!
rails@localhost がscheduler_developmentとscheduler_testを
扱えるように下記Queryを実行
mysql> grant all on scheduler_development.* to rails@localhost;
Query OK, 0 rows affected (0.04 sec)
mysql> grant all on scheduler_test.* to rails@localhost;
Query OK, 0 rows affected (0.00 sec)
WEBrickをおまじないのように再起動
$ rake db:migrate
(in /home/b-tech01/scheduler)
== CreateSchedulers: migrating ================================================
-- create_table(:schedules)
-> 0.0647s
== CreateSchedulers: migrated (0.0651s) =======================================
mysql> show tables;
+---------------------------------+
| Tables_in_scheduler_development |
+---------------------------------+
| schedules |
| schema_info |
+---------------------------------+
2 rows in set (0.00 sec)
できたーーーーーーーーー!!
高級?なMySQLではちゃんとデータベースごとにユーザ設定をしてあげなければ
ならないということでした。
はぁ〜〜長かった・・・
・/var/run/mysqld/mysqld.sock のリンクを作成して mysql.sock とリンク名を変更
・RoRで作りかけアプリの中 /scheduler/tmp に放りこんでみる
・/scheduler/config/database.ymlに昨日追加した
「socket: /var/run/mysqld/mysqld.sock」の一文を削除
・$ rake db:migrate を実行してみる。
→ やっぱりダメ!
database.ymlをもう一度見てみる。
コメントには「MySQLのバージョンは4.0と5.0がお勧め」って書いてある。
バージョンは 5.0.38 だから問題なさそう。
database.ymlの socket: 指示を消すと rake はどこから
「/tmp/mysql.sock」だと命令されているのか?
ググってみると
☆ MySQLのソケットの位置はどうやって指定する?
> 1. 引数
> 2. 環境変数 MYSQL_UNIX_PORT
> 3. デフォルト値 /tmp/mysql.sock
> の順でソケットの位置を見ていることがわかった。
だから、やっぱり、scheduler/config/database.ymlに
「socket: /var/run/mysqld/mysqld.sock」って追加すればいいのでは??
ううう。
自分的 FAQ (よくある質問とその回答)
今までやっていたことと同じような感じですが、
>4.WEBrick を再起動
これが気になります。
□WEBrick 起動コマンド
$ ruby ./script/server
http://localhost:3000/確認。
問題なく立ち上がってます。
もう一度
$ rake db:migrate
(in /home/b-tech01/scheduler)
rake aborted!
#42000 Access denied for user 'rails'@'localhost' to database 'scheduler_development'
あー やっとエラーの内容が変わりました!
たぶん、socketは通った(?)
次はMySQLのエラーが〜
MySQLの「#42000Access denied for user ''@'localhost' to database 'sample'」というエラー
>「grant」文で、作ったデータベースで、ユーザー「recipe3」に
>アクセス権減を与える訳ですが、僕はここの「recipe3@localhost;」という
>箇所をチュートリアルのままやっていたので「recipe@localhost;」としたままでした。
との一文・・・で、どう解決されたのだろう・・・
私もチュートリアルの言うままdatabase.ymlを
adapter: mysql
database: scheduler_development
username: rails
password:
host: localhost
encoding: utf8
socket: /var/run/mysqld/mysqld.sock
としたのですが、「'rails'@'localhost'」でエラーが出ているということは
アクセス権の問題?まだテーブル作ってませんが・・・
RubyOnRails を使ってみる 【第 2 回】 (続・RubyOnRails を使ってみる)
データベースの設定
↑ここに答えがありました!!!!
rails@localhost がscheduler_developmentとscheduler_testを
扱えるように下記Queryを実行
mysql> grant all on scheduler_development.* to rails@localhost;
Query OK, 0 rows affected (0.04 sec)
mysql> grant all on scheduler_test.* to rails@localhost;
Query OK, 0 rows affected (0.00 sec)
WEBrickをおまじないのように再起動
$ rake db:migrate
(in /home/b-tech01/scheduler)
== CreateSchedulers: migrating ================================================
-- create_table(:schedules)
-> 0.0647s
== CreateSchedulers: migrated (0.0651s) =======================================
mysql> show tables;
+---------------------------------+
| Tables_in_scheduler_development |
+---------------------------------+
| schedules |
| schema_info |
+---------------------------------+
2 rows in set (0.00 sec)
できたーーーーーーーーー!!
高級?なMySQLではちゃんとデータベースごとにユーザ設定をしてあげなければ
ならないということでした。
はぁ〜〜長かった・・・
Install Aptana to ubuntu --- 続き
AptanaでRadRailsが表示されない現象について、
情報をいただきました。
お恥ずかしいことに、Javaのバージョン確認を見逃していました。
>原因:Javaのバージョンが1.4のまま
>
> * 参考
> o Aptana Forums :: View topic - FAQ - Please read first
> o http://www.aptana.com/forums/viewtopic.php?t=2102
>
>対応:Javaの5.0(1.5)をインストール
まずはバージョンを確認。
-------------------------------------------
-------------------------------------------
$ java -version
java version "1.4.2"
gij (GNU libgcj) version 4.1.2 (Ubuntu 4.1.2-0ubuntu5)
-------------------------------------------
-------------------------------------------
1.4.2でした!なるほど・・・
$ sudo aptitude install sun-java5-jdk
インストール終了後
> cd /usr/bin
> sudo mv java java_1.4
> sudo ln -s /usr/lib/jvm/java-1.5.0-sun/bin/java java
教えられた通りにやってみると、
java version "1.5.0_11"
になりました!
以前にRubyもRakeも入れたハズ・・・確認してみると
cd /usr/share/doc/r
radeontool/ readahead/ rss-glx/
rails/ readline-common/ rsync/
rake/ reiserfsprogs/ ruby/
rdesktop/ restricted-manager/ ruby1.8/
rdoc/ rhythmbox/
rdoc1.8/ rpm/
入っているので、Aptanaを起動してみると・・・
Radrailsが入りましたーー!
Javaバージョンなんて、最初に確認しないとだめですよね・・・
AptanaにRadRailsが入ってくれたので、
昨日プロンプトで作りかけていたschedulerプロジェクトをインポートしてみました。
ちょっと気になる感じではありましたが、
インポートも完了。
これから教本見つつAptanaで開発していこうと思います。
その前に、昨日のmigrateのNo such file or directory - /tmp/mysql.sockってとこの問題を
解決しなければ・・・・
情報をいただきました。
お恥ずかしいことに、Javaのバージョン確認を見逃していました。
>原因:Javaのバージョンが1.4のまま
>
> * 参考
> o Aptana Forums :: View topic - FAQ - Please read first
> o http://www.aptana.com/forums/viewtopic.php?t=2102
>
>対応:Javaの5.0(1.5)をインストール
まずはバージョンを確認。
-------------------------------------------
-------------------------------------------
$ java -version
java version "1.4.2"
gij (GNU libgcj) version 4.1.2 (Ubuntu 4.1.2-0ubuntu5)
-------------------------------------------
-------------------------------------------
1.4.2でした!なるほど・・・
$ sudo aptitude install sun-java5-jdk
インストール終了後
> cd /usr/bin
> sudo mv java java_1.4
> sudo ln -s /usr/lib/jvm/java-1.5.0-sun/bin/java java
教えられた通りにやってみると、
java version "1.5.0_11"
になりました!
以前にRubyもRakeも入れたハズ・・・確認してみると
cd /usr/share/doc/r
radeontool/ readahead/ rss-glx/
rails/ readline-common/ rsync/
rake/ reiserfsprogs/ ruby/
rdesktop/ restricted-manager/ ruby1.8/
rdoc/ rhythmbox/
rdoc1.8/ rpm/
入っているので、Aptanaを起動してみると・・・
Radrailsが入りましたーー!

Javaバージョンなんて、最初に確認しないとだめですよね・・・
AptanaにRadRailsが入ってくれたので、
昨日プロンプトで作りかけていたschedulerプロジェクトをインポートしてみました。
ちょっと気になる感じではありましたが、
インポートも完了。
これから教本見つつAptanaで開発していこうと思います。
その前に、昨日のmigrateのNo such file or directory - /tmp/mysql.sockってとこの問題を
解決しなければ・・・・
2007年10月3日水曜日
RoR チュートリアル
結局、とにかくなにかアプリが作りたい!と思い、
『はじめよう Ruby on Rails』を見ながらコマンドプロンプトで
スケジューラーを作成し始める!! 16時すぎから・・・ (>_<) 本の言う通りに設定を済ませ、データベースも作り、 サクサクサクサク進んで喜んでいたら、「5-1 データベースの設計」で rake を使ってテーブルを作ろうとしたら・・・・出ましたエラー
---------------------------------------
$ rake db:migrate
(in /home/b-tech01/scheduler)
rake aborted!
No such file or directory - /tmp/mysql.sock
---------------------------------------
はい。実際 /tmp/ の中身は空っぽでした。
が、ググったらすぐにみつかりました。
/tmp/mysql.sockが見つからないって言われた
調べてみると
---------------------------------------
sudo mysqladmin version
mysqladmin Ver 8.41 Distrib 5.0.38, for pc-linux-gnu on i486
Copyright (C) 2000-2006 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Server version 5.0.38-Ubuntu_0ubuntu1-log
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 4 hours 44 min 23 sec
---------------------------------------
config/database.ymlに socket: /var/run/mysqld/mysqld.sock と書いてみる。
・・・・
---------------------------------------
$ rake db:migrate
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
/usr/lib/ruby/1.8/rake.rb:1822:in `load_rakefile'
(See full trace by running task with --trace)
---------------------------------------
だめじゃ〜ん・・・
ついでに、 /var/lib/mysql/mysql.sock も試してみるがダメでした。
今日はここで時間がきてしまいました。
明日、引き続き頑張ってみます。
うううう・・・・
『はじめよう Ruby on Rails』を見ながらコマンドプロンプトで
スケジューラーを作成し始める!! 16時すぎから・・・ (>_<) 本の言う通りに設定を済ませ、データベースも作り、 サクサクサクサク進んで喜んでいたら、「5-1 データベースの設計」で rake を使ってテーブルを作ろうとしたら・・・・出ましたエラー
---------------------------------------
$ rake db:migrate
(in /home/b-tech01/scheduler)
rake aborted!
No such file or directory - /tmp/mysql.sock
---------------------------------------
はい。実際 /tmp/ の中身は空っぽでした。
が、ググったらすぐにみつかりました。
/tmp/mysql.sockが見つからないって言われた
調べてみると
---------------------------------------
sudo mysqladmin version
mysqladmin Ver 8.41 Distrib 5.0.38, for pc-linux-gnu on i486
Copyright (C) 2000-2006 MySQL AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Server version 5.0.38-Ubuntu_0ubuntu1-log
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 4 hours 44 min 23 sec
---------------------------------------
config/database.ymlに socket: /var/run/mysqld/mysqld.sock と書いてみる。
・・・・
---------------------------------------
$ rake db:migrate
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
/usr/lib/ruby/1.8/rake.rb:1822:in `load_rakefile'
(See full trace by running task with --trace)
---------------------------------------
だめじゃ〜ん・・・
ついでに、 /var/lib/mysql/mysql.sock も試してみるがダメでした。
今日はここで時間がきてしまいました。
明日、引き続き頑張ってみます。
うううう・・・・
登録:
投稿 (Atom)