■目次
概要導入
■概要
http://railstutorial.jp/ このページを参考に、Ruby on Railsを勉強予定 http://drilldripper.hatenablog.com/entry/2017/05/13/214744 勉強した人のメモ http://www.rubylife.jp/ini/ その前に、このページでRubyを勉強予定 https://www.oiax.jp/rails/zakkan/rails_4_2_installation_on_windows.html 上のページで解説されているRailsのバージョンは4.2.2なので、Rubyは2.1.8にする http://www.publickey1.jp/blog/16/rails_50jsonapi_modewebsocketaction_cable.html バージョン5はまだ出たばかりみたい http://dev.classmethod.jp/server-side/ruby-on-rails/windows_ruby-on-rails_run/ が解りやすそうなので、基本的にこのページを参考にインストール
■導入
■Rubyをインストール http://rubyinstaller.org/downloads/ から「Ruby 2.1.8 (x64)」をダウンロード 「C:\ruby」にインストール。3つのチェックボックスにチェック 同ページから「For use with Ruby 2.0 and above (x64 - 64bits only)」をダウンロード ■Ruby動作確認 拡張子「rb」で動作させる場合、.htaccessなどで以下を指定しておく
AddHandler cgi-script .cgi .rb
hello.rb
#!/ruby/bin/ruby #encoding: utf-8 print "Content-type: text/html\n\n" print "<html>\n" print "<head>\n" print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n" print "<title>Hello world !</title>\n" print "</head>\n" print "<body>\n" print "テスト<br>\n" print "</body>\n" print "</html>\n" exit
ブラウザからhello.rbにアクセスし、「テスト」と表示されれば成功 以前はencodingの指定が無いとエラーになったが、今回は大丈夫だった ■Ruby+MySQL動作確認 以前は以下の手順でインストールできたが、今のXAMPPにはlibフォルダが無かった ↓ ↓ ↓ ↓ ↓ プログラム内に require 'mysql' と書くと LIBMYSQL.dll が無いというエラーになる C:\xampp\mysql\lib\libmysql.dll を C:\ruby\bin\libmysql.dll にコピー ↑ ↑ ↑ ↑ ↑ gemでインストールしようとしてもエラーになった ↓ ↓ ↓ ↓ ↓ >gem install mysql2 Fetching: mysql2-0.4.4.gem (100%) Temporarily enhancing PATH to include DevKit... Building native extensions. This could take a while... ERROR: Error installing mysql2: ERROR: Failed to build gem native extension. 〜略〜 extconf failed, exit code 1 Gem files will remain installed in C:/ruby/lib/ruby/gems/2.1.0/gems/mysql2-0.4.4 for inspection. Results logged to C:/ruby/lib/ruby/gems/2.1.0/extensions/x64-mingw32/2.1.0/mysql2-0.4.4/gem_make.out ↑ ↑ ↑ ↑ ↑ ▼ ▼ ▼ ▼ ▼ http://halfdome.biz/redmine%E3%82%92windows10%E3%81%AB%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%... このページを参考に、インストールできた 消えている… http://webcache.googleusercontent.com/search?q=cache:ShD6SA1YPXIJ:halfdome.biz/redmine%25E3%2582%259... http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.5/ から mysql-5.5.51-winx64.zip をダウンロードし、解凍して C:\ruby\mysql-5.5.51-winx64 に配置 以下のコマンドでmysql2をインストール ↓ ↓ ↓ ↓ ↓ >gem install mysql2 -- '--with-mysql-lib="C:\ruby\mysql-5.5.51-winx64\lib" --with-mysql-include="C:\ruby\mysql-5.5.51-winx64\include"' Temporarily enhancing PATH to include DevKit... Building native extensions with: '--with-mysql-lib="C:\ruby\mysql-5.5.51-winx64\lib" --with-mysql-include="C:\ruby\mysql-5.5.51-winx64\include"' This could take a while... Successfully installed mysql2-0.4.4 Parsing documentation for mysql2-0.4.4 Installing ri documentation for mysql2-0.4.4 Done installing documentation for mysql2 after 1 seconds 1 gem installed ↑ ↑ ↑ ↑ ↑ ▲ ▲ ▲ ▲ ▲ ↑http://cdn.mysql.com/Downloads/Connector-C/mysql-connector-c-6.1.6-win32.zip から libmysql.dll を入手して、C:\ruby\bin\libmysql.dll に配置するだけでいいかも?
CREATE TABLE address( no INT, name VARCHAR(80), tel VARCHAR(80) ) DEFAULT CHARSET=utf8; INSERT INTO address(no, name, tel) VALUES(1, '山田太郎', '090-1234-5678'); INSERT INTO address(no, name, tel) VALUES(2, "山田花子", "090-2345-6789");
以下のプログラムでテーブルの内容を表示できた。
#!/ruby/bin/ruby require 'mysql2' print "Content-type: text/html\n\n" print "<html>\n" print "<head>\n" print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n" print "<title>Hello world !</title>\n" print "</head>\n" print "<body>\n" print "<pre>\n" print "MySQLのテスト。<br>\n" client = Mysql2::Client.new(:host => 'localhost', :user => 'root', :password => '1234') query = %q{select no, name from test.address} results = client.query(query) results.each do |row| puts "--------------------" row.each do |key, value| puts "#{key} => #{value}\n" end end print "</pre>\n" print "</body>\n" print "</html>\n" exit
参考 http://qiita.com/toshiro3/items/b65b2ad744d8f3ecc734 ■Ruby on Railsをインストール gem install rails -v 4.2.2 と、Railsのバージョンを指定してインストール バージョンを指定しないと最新版がインストールされる (ただし最新版は2.1.8で動作しないため、この環境ではインストールできない) ■Ruby on Railsの動作確認(SQLite3) ※デフォルトではデータベースにSQLite3が使われる https://www.oiax.jp/rails/zakkan/rails_4_2_installation_on_windows.html この手順で動作確認 コマンドプロンプトで、Railsアプリケーションを作成したい場所へ移動 rails new rails-test --skip-bundle cd rails-test bundle install rails g scaffold user name:string email:string rake db:migrate rails s http://localhost:3000/users にアクセスすると 「TypeError: オブジェクトでサポートされていないプロパティまたはメソッドです。」 というエラーが表示された http://qiita.com/falcon8823/items/f4dc2b5a474869dff449 Node.jsをインストールしてからコマンドプロンプトを再起動し、再度scaffoldを実行するとエラーが解消された 名前とメールアドレスが登録管理できれば完了 ■Ruby on Railsの動作確認(MySQL) http://qiita.com/itkrt2y/items/4ea5bfe90ca65e4a9ebd この手順で動作確認 scaffold時にmysql2のバージョンが云々と言われる場合 http://cdn.mysql.com/Downloads/Connector-C/mysql-connector-c-6.1.6-win32.zip からライブラリを入手して C:\ruby\bin\libmysql.dll に配置すれば大丈夫みたい あらかじめデータベースを作成しておいた コマンドプロンプトで、Railsアプリケーションを作成したい場所へ移動 rails new rails-mysql -d mysql cd rails-mysql rails-mysql/config/database.yml を編集
password: 1234 database: rails-development database: rails-test database: rails-production
rails-mysql/Gemfile を編集(libmysql.dllを配置しなおしたので不要かも?)
gem 'mysql2', '~> 0.3.20'
bundle install bundle update を実行しておくと、各ライブラリが最新になる? rails g scaffold user name:string email:string rake db:migrate rails s http://localhost:3000/users にアクセスしてユーザを管理できれば完了