時代は Ruby on Rails らしいので、触ってみることにしました。 参考書はこれ↓
翻訳プロジェクトも動いているらしいので、そのうち翻訳が出そう。
Ruby はそれなりに書ける。MySQL とかデータベースの知識はあまりない。
環境は Debian sid。Ruby は apt-get で入れておく。
% ruby -v ruby 1.8.3 (2005-06-23) [i486-linux]
# apt-get install libmysql-ruby1.8
してみる。これだけだと MySQL サーバが入らなかったようなので、
# apt-get install mysql-server-4.1
でインストールした。
テストしてみる。
% mysqlshow -u root +-----------+ | Databases | +-----------+ | mysql | | test | +-----------+
動いている模様。
rails は Debian sid では deb パッケージが提供されているので
# apt-get install rails
でインストールできる。
% mkdir work % cd work % rails demo
で雛型ができる。
% cd demo % ruby script/server
で、Webrickによるhttpサーバが起動するので、port 3000にアクセスすると ページが見れる。
データベースのテストをしてみる。
% mysql -u root > create database activerecord_unittest; > create database activerecord_unittest2; > \q % cd /usr/share/rails/activerecord/test % mysql -u root activerecord_unittest < fixtures/db_definitions/mysql.sql % mysql -u root activerecord_unittest2 < fixtures/db_definitions/mysql2.sql
ここまで OK。
% ruby -Iconnections/native_mysql base_test.rb
... debug.log が何たらと言われる。場所が場所なので、とりあえず root でやってみると
% sudo ruby -Iconnections/native_mysql base_test.rb ... MysqlError: Access denied for user 'rails'@'localhost' (using password: NO)
というエラーがいっぱい出る。
ユーザ名 rails を変えられないかと探したが、すぐには見つからなかったので Rails::01.インストール のとおりに
% mysql -u root -p > GRANT ALL ON *.* to rails@localhost; > \q
で権限を付けた。
% sudo ruby -Iconnections/native_mysql base_test.rb Using native MySQL Loaded suite base_test Started ........................................................................................ Finished in 9.983478 seconds. 88 tests, 199 assertions, 0 failures, 0 errors
今度は OK。