【質問】RadRailsで環境構築後、プレビューでエラー

109 views
Skip to first unread message

kaneuchi@CGFM

unread,
Sep 20, 2007, 12:26:27 PM9/20/07
to dokoikuto
金内です。お疲れ様です。

25日まで、あと少しとなりました。
うちのチームはほとんど完成形(!)なので
あとは詰めの作業ですね。

遅ればせながら私も
以下の階層で環境を構築して
RadRailsでの作業を試みました。

ところが、早速問題が起きたので助けてください(ノ_<。)

http://localhost:3000/ で画面を確認できません...

---------------------
▼RadRailsとrubyの置き場所
D:\RadRails
D:\ruby

▼作業データの場所
E:\mutsuki\works\RBC出島ノック\dokoiku

設定>エディター>構成
Rails パス:D:\ruby\bin\rails
Rake パス:D:\ruby\bin\rake
Mongrelパス:D:\ruby\bin\mongrel_rails

設定>Ruby>Ri/rdoc
RDoc パス:D:\ruby\bin\rdoc
Ri パス:D:\ruby\bin\ri
---------------------
これで、ソースは無事見れるようになったのですが
http://localhost:3000/ で画面を確認しようとしたら
トップページは見れるのですが
「会員登録」ボタンから先のページに行くと
以下のようなエラーが出てしまいました。

▼development.log
---------------------
Mysql::Error (#42000Unknown database 'dokoiku_development'):
d:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/
active_record/vendor/mysql.rb:523:in `read'
(略)
./script/server:3
-e:4:in `load'
-e:4

Rendering d:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/
action_controller/templates/rescues/layout.rhtml (500 Internal Error)
---------------------
内部エラーだと思いますが
RadRailsとrubyを並列して置いてることが問題なのか
何が問題なのかが分からず、行き詰ってしまいました。

どの辺がエラーの原因か検討つきますでしょうか?
development.logを送ったほうがよろしければ送ります。

すみませんが、よろしくお願いします。

Takeshi Akima

unread,
Sep 20, 2007, 1:42:19 PM9/20/07
to dokoi...@googlegroups.com
金内さん

秋間です。

ごめんなさい、重要なものを言い忘れてました。
それはデータベースです。

> Mysql::Error (#42000Unknown database 'dokoiku_development'):

このエラーは、Mysqlのエラーで、dokoiku_development という
データベースって知らないデータベースなんだけど? とか言ってます。

ここで注意なんだけど「データベース」という言葉は二つの意味で
使っています。
MySQLやOracle、Accessという製品も「データベース」だし、
知らないよって言われたdokoiku_developmentも「データベース」です。

ややこしいので、ここでは前者をDBMS、後者をDBあるいは
データベースと呼びます。

で、ここからがどうするべきかって話ね。

1. MySQL をダウンロード
本当なら http://dev.mysql.com/downloads/ から
自分の環境に合うものをインストールするべきなんだけど、
ひとみさんがMySQL5.0をインストールしてうまくいってなかったので
4.1をダウンロードしてやってみましょう。こちらをダウンロードして
実行してくだっさい。
http://dokoiku.googlecode.com/svn/archives/mysql-essential-4.1.18-win32.msi

2. インストール
ダウンロードが終わったら実行してみましょう。
インストールウィザードが起動します。
http://www.ddsystems.info/ex/ex_cgi/260102.html
参照してインストールしてみてください。

注意点は一つだけ。
ページ14、ウィザード8
http://www.ddsystems.info/ex/ex_cgi/260114.html
では、utf8 をえらんでください。

ページ16、ウィザード 10
ではrootユーザーのパスワードを設定できますが、
今回ははずしてください。
もし指定したら、絶対忘れちゃダメです。

それ以外は次々進んでOK。

最後まで実行したら、PCにはMySQLが動いているはずです。

3. dokoiku_development DBの作成

で、Windowsの「スタート」ボタンを押して、
「ファイル名を指定して実行」を行い、
cmd とだけ入力して「OK」
# あるいは、コマンドプロンプトを開いてください。

で、これ以降はコマンドプロンプトでの操作です。
「>」という部分は入力する部分ですので、
「>」は入力してなくてOKですので、ご注意を。

root のパスワードを
> mysql -u root
とすると、「mysql> 」というのが出てきます。

これが出てきたら、
E:\mutsuki\works\rbc_dejima_nock\dokoiku\db\mysql\create_databases.sql
をテキストエディタ、あるいはRadRails上で開いて、
すべてコピーします。

コピーしたらコマンドプロンプトに戻って、
右クリックして「貼り付け」してください。

エラーが出ていないかどうか・・・
分らなかったら、右クリックで範囲選択した後、
コピーして、メールに貼り付けられるようにどこかに
保存しておいてください。

エラーがなさそうだったら、コマンドプロンプトで
mysql> exit
してください。
これで dokoiku_development というDBの
入れ物だけできました。

4. dokoiku_development のテーブルの生成

まず、dokoikuプロジェクトのディレクトリは・・・


E:\mutsuki\works\RBC出島ノック\dokoiku

ですよね?

あ、「出島ノック」はまずいことが起きるかもしれません。
E:\mutsuki\works\rbc_dejima_nock\dokoiku
に変えておきましょうか。

次に、コマンドプロンプトで以下のように入力します。
> E:\
> cd E:\mutsuki\works\rbc_dejima_nock\dokoiku

これで、カレントディレクトリを
E:\mutsuki\works\rbc_dejima_nock\dokoiku
に移動しました。

このディレクトリで色々操作することが多いので、
> E:\
> cd E:\mutsuki\works\rbc_dejima_nock\dokoiku
は覚えておいてください。
たいてい「プロジェクトのディレクトリでコマンドプロンプトを開く」
と言うと、上の操作を意味します。

で、プロジェクトのディレクトリで、
> rake db:migrate
と実行すると、dokoiku_development DBに必要な
テーブルが生成されます。

これでdokoikuを動かす準備ができました。

せっかくですから、コマンドプロンプトからサーバーを
起動してみましょう。

> ruby script/server

これで、サーバーが起動するはずです。
あとは、ブラウザで http://localhost:3000
にアクセスしてみて動けば大成功です。

上手くいったら、お疲れ様でした!
上手くいかなかったら連絡ください。

慣れないと難しいかも知れませんが、頑張ってみてください!
では。


kaneuchi@CGFM さんは書きました:

kaneuchi@CGFM

unread,
Sep 20, 2007, 3:17:53 PM9/20/07
to dokoikuto
金内です。

秋間さん、説明手順をまとめていただいて
ありがとうございます。分かりやすいです。
本当に遅い時間まですみません。

1、2までは行けたのですが
(2のインストール最後で3つまでしかチェックが入りませんでしたが)
3以降からつまづいてしまいました。

コマンドプロンプトから打ったところ、エラーを返されたので
試しに、MySQL Command Line Clientから打ったら
少しは進んだものの、やはりエラーが出てしまいました。

▼以下、私の格闘(?)の記録です。
せっかくだから、動くところまで持って行きたかったんですが
睡魔が襲ってきましたので、断念しました。

よろしければ、この記録から何か原因が見つかれば教えてください。
本当に手間のかかる弟子ですが、よろしくお願いします。
~~~~~~~~~~~
▼3. dokoiku_development DBの作成
--------------
■コマンドプロンプト
C:\Documents and Settings\mutsu>mysql -u root
ERROR 2003 (HY000): Can't connect to MySQL server on
'localhost' (10061)

C:\Documents and Settings\mutsu>

■MySQL Command Line Clientの場合
mysql> create database dokoiku_development default character set utf8;
ERROR 1007 (HY000): Can't create database 'dokoiku_development';
database exists

mysql> create database dokoiku_test default character set utf8;
ERROR 1007 (HY000): Can't create database 'dokoiku_test'; database
exists
mysql> create database dokoiku_production default character set utf8;
ERROR 1007 (HY000): Can't create database 'dokoiku_production';
database exists
mysql> grant all on dokoiku_development.* to
'dokoiku_user'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql>
--------------
▼4. dokoiku_development のテーブルの生成
--------------
■コマンドプロンプト
C:\Documents and Settings\mutsu>E:\
'E:\'は内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチファイルとして認識されていません。

■MySQL Command Line Clientの場合
mysql> E:\
-> cd E:\mutsuki\works\rbc_dejima_nock\dokoiku

ERROR:
Unknown command '\m".
ERROR:
Unknown command '\w".
ERROR 1049(42000): Unknown database 'bc_dejima_nockdokoiku'
mysql>
--------------

Takeshi Akima

unread,
Sep 20, 2007, 6:32:52 PM9/20/07
to dokoi...@googlegroups.com
おはようございます。秋間です。

金内さん、遅くまでお疲れ様です。

> C:\Documents and Settings\mutsu>mysql -u root

なんですけど、

C:\Documents and Settings\mutsu>mysql -u root -p
で試してもらえます?パスワードを聞いてくるので、
MySQLのインストール時に設定したパスワードを入力してください。
もしパスワードを設定していなければ何も入力せずにENTERで。


ここがうまく行かないと、先に進んでもどうにもなりません。

で、4の方にもひとつ間違いがありました。

> C:\Documents and Settings\mutsu>E:\

これは

C:\Documents and Settings\mutsu>E:

の間違いでした。

> mysql -u root -p

以降がうまくいったら、先に進んでくださいね。


> 本当に手間のかかる弟子ですが、よろしくお願いします。

こちらこそ、あんまり説明が上手じゃなくてすみません。
もうちょっとだと思うので頑張ってみてください。

では。


kaneuchi@CGFM さんは書きました:

Takeshi Akima

unread,
Sep 20, 2007, 6:57:21 PM9/20/07
to dokoi...@googlegroups.com
ごめんなさい、ウソついちゃった。


> ■MySQL Command Line Clientの場合
> mysql> create database dokoiku_development default character set utf8;
> ERROR 1007 (HY000): Can't create database 'dokoiku_development';
> database exists

と出ているので、DBできています!
3番クリアです!

あとは、4番を実行するだけですね。
4番は、MySQL Command Line Clientではなく
コマンドラインで実行してください。

> E:\
じゃなくて
> E:
にすればあとは、うまくいくはずです。

よろしくですー。


Takeshi Akima さんは書きました:

kaneuchi@CGFM

unread,
Sep 21, 2007, 12:30:07 AM9/21/07
to dokoikuto
金内です。

秋間さん、ありがとうございます。

おかげ様でトップページがきれいに表示されるところまで行きました!

ただ、「会員登録」や「コースを探す」からの
リンク先がうまく表示されませんでした。
----------------
▼会員登録 の場合
Errno::EBADF in AccountController#signup
Bad file descriptor - connect(2)

▼コースを探す の場合
Errno::EBADF in RecommendController#result
Bad file descriptor - connect(2)

一番下の行にはこう書かれてました。
Rendering d:/ruby/lib/.../templates/rescues/layout.rhtml(500 Internal
Error)
----------------
色々ググってgemパッケージをインストールしたんですが...うーむ。

お時間に余裕があるときで構いませんので
(↑いつも夜遅くにお返事いただいて申し訳ないので...)
教えていただければ助かります。

秋間武志

unread,
Sep 21, 2007, 10:06:59 AM9/21/07
to dokoi...@googlegroups.com
金内さん

お疲れ様です。秋間です。

> Errno::EBADF in AccountController#signup
> Bad file descriptor - connect(2)

この原因が良くわからないんですけど、ブラウザで開いているのは、
http://localhost:3000
ですよね?

うーん、3000番ではなく80番ポートならSkypeが使ってたりすることも
あるらしいので、一度Skypeとかツール類をできるだけ終了して
起動してみてもらえますか?

一通り試してだめだったら
> ruby script/server
と入力していた部分を
> ruby script/server -p 3001
として、ブラウザで http://localhost:3001 にアクセスしてみてください。

3001でもだめなら3002・・・・3009ぐらいまでやってダメなら
別に原因があるはずですが、多分これでいけるんじゃないかなー。

連絡お待ちしています。


07/09/21 に kaneuchi@CGFM<lunc...@gmail.com> さんは書きました:

金内和子

unread,
Sep 21, 2007, 10:32:46 AM9/21/07
to dokoi...@googlegroups.com
金内です お疲れ様です。

秋間さん、ありがとうございます。

全部試したところ…ダメでした。
ということは別の原因ですね~

すみません、お手数お掛けします。

kaneuchi@CGFM

unread,
Sep 22, 2007, 4:31:31 AM9/22/07
to dokoikuto
金内です、お疲れ様です。

私なりに原因について考えたのですが...

・php動作確認のためにxamppが入っていることで
mysqlが複数存在していた
(自分で入れてないので把握できてませんでした)

・迷路に入り込んだ私が、ググっていらぬことをした

ということが何らかの作用を及ぼしてるのでは...?
と思ってます。

そこで、今使用しているPCではなくサブ(ノート)で環境構築を試みたところ
少しは前進した気がします。

・トップページが表示される
・「会員登録」のボタンから会員登録のページが表示される
・「この条件で検索」ボタンからの検索結果ページは
エラーが出るものの、エラーの内容が変わった

▼エラーの内容
-----------------------------
NoMethodError in Recommend#result

Showing app/views/recommend/result.rhtml where line #46 raised:

You have a nil object when you didn't expect it!
The error occurred while evaluating nil.name

Extracted source (around line #46):

43: </script>
44:
45: <div id="result_list">
46: <p class="font_bold font_red"><%=h @course.name %></p>
47: <p>オススメ度 <span class="star_point">★★★★</span></p>
48: <h2 id="other_course">他のオススメコース</h2>
49: <ul>
-----------------------------

あと、すみませんm(_ _)m
svnで最新情報を取得しようとしたとき
編集データのフォルダの1階層上に
trunkフォルダを誤って追加してしまいました。
削除の方法も教えてください。

お手数お掛けしますが、よろしくお願いします。

金内

Reply all
Reply to author
Forward
0 new messages