掲載日: 2015/06/13
Ruby on Rails は、RubyのWebフレームワーク=Webアプリケーションをカンタンに作るためのツールです。
ここでは、rptパッケージで Ruby on Rails を試す場合の留意点を記します。
rptパッケージ(2015/06/13にアップロードしたもの)では、rubyライブラリを追加する必要はありません。
ただし、2015/05/16にアップロードしたrpt_main.zipを解凍した場合は、下の方法でrubyライブラリを追加しなければなりません。
DOSプロンプトの状態で、次のようにコマンドを実行します。gemコマンドを3回実行します。インターネット接続の環境下で実行して下さい。
ちなみに、rptパッケージでDOSプロンプトの状態にするには、rptというフォルダの下にあるrpt_cmd.batを実行します。すると、DOSプロンプトの状態になります。
gem install uglifier
gem install coffee-rails
gem install coffee-script-source -v 1.8.0
これで、railsの実行に不足していたライブラリが追加されます。
下のサイトで紹介されているWebアプリケーション作成手順を試しました。
Ruby on Railsをはじめよう (小学生でもわかるRuby on Rails入門)
Webアプリケーションを作る手順が紹介されているだけでなく、なぜそのような手順を採るのかという「仕組み」や「考え方」が平易に解説されています。
Railsが用意してくれる既定のファイルを書き換える際、あえてエラーが発生してしまうような書き換えを掲げながら、エラーが起きる理由を説明し、合わせて、それを解決する方法を紹介するという形で進んでいきます。
いきなりエラーのない状態に持っていくより、一歩づつ着実に進めていく感じがして、分かりやすい解説だと思いました。
前述のサイト(以下「小学生でもわかる」と記します。)で紹介されている方法をrptパッケージで実際に試してみる場合に、いくつか注意すべき点があります。それを記します。
Ruby on Railsを試す場合、rails や rake というコマンドを用います。その際、rptフォルダの下にあるrpt_cmd.batを実行して、DOSプロンプトの状態になってから、それらコマンドをタイプします。
予めRails用のフォルダを設けて、その下でコマンドをタイプするのがいいと思います。
例えば、D:\rails というフォルダを設け、その下で rails new my_test
と実行します。これは、my_testというRailsアプリをつくることを意味しますが、my_testというサブフォルダができます。D:\rails\my_test が作られるわけです。
以後のコマンド実行は、この D:\rails\my_test というフォルダの下で行います。
参考まで、DOSプロンプトで入力するコマンドを列記してみます。
大きな流れとしては、Railアプリを作成してから、
ツィッターのユーザープロフィールを記録するためのデータベースを設けます。プロフィールの情報には氏名や住所その他が含まれます。
そして、具体的なユーザーを登録します(これはコマンド実行ではなく、既定のファイルの書き換えによって行う)。
また、ツィッターの標題と文章を記録するためのデータベースを設け、
標題と文章をWeb上で入力してもらうためのフォーム入力を作ります。
その後、ツィッターの標題と文章の一覧を表示するサイトを設定します。
「小学生でもわかる」では、ブラウザでアクセスするURIが次のように記されています。
http://0.0.0.0:3000/users/index
rptパッケージでRailsを試す場合は、上記の 0.0.0.0
のところを localhost
に置き換えます。つまり、次のようになります。
http://localhost:3000/users/index
「小学生でもわかる」で紹介されている手順に従って進め、ブラウザで所定のURIにアクセスすると、ExecJSに関するタイプエラーが起きると思います。
このエラーを防ぐには、次のようにします。
まず、最初のコマンド入力 rails new mitakalab-twitter
を実行すると、mitakalab-twitterというフォルダができます。
このフォルダの下に Gemfile というファイルがあります。これを書き換えます。
次の1行があるはずです。
gem 'coffee-rails', '~> 4.1.0'
もしかすると、4.1.0というバージョン番号は別のものになっているかもしれませんが、その辺は気にしなくてもいいです。
上の行の直後に、下の1行を挿入します。
gem 'coffee-script-source', '1.8.0'
このようにGemfileを書き換えてから、DOSプロンプトで下のコマンドを実行します。もちろん、mitakalab-twitterというフォルダの下で実行します。
bundle update
ここで書いたエラー防止策は、下のサイトを参考にしたものです。
Rails4 - Windows 7 の Rails で ExecJS が TypeError を吐くようになった
DOSプロンプトで rails s
と入力すると、Webサーバーが起動します。
このサーバーを終了させるためには、コントロールキーを押しながらアルファベットCのキーをたたきます。
railsというコマンドは、MS-Windowsではrails.batというバッチコマンドなので、コントロール+Cを入力すると、「バッチ処理を終了しますか」のようなメッセージが出ると思います。’Y’とエンターキーで応答して下さい。
また、DOSプロンプトの状態にするために、rpt_cmd.batを実行したわけですが、コントロール+Cがこのバッチにも適用されてしまい、「バッチ処理を終了しますか」のメッセージが一度ならず出るかもしれません。その時は、やはり ‘Y’とエンターキーで応答して下さい。
rails new mitakalab-twitter
を実行すると、Railsアプリが新たに作られるわけですが、このとき、Rails関連のフォルダとファイルが新規に作成されるだけでなく、bundleコマンドも実行されます。
bundleによって、Railsで利用するはずのruby用ライブラリを新しくしたり、足りないものがあればインストールします。
パソコンがインターネット接続の環境にない場合、あるいは、あえてbundleコマンドの実行を避けたい場合は、 --skip-bundle
を付けて実行します。
rails new mitakalab-twitter --skip-bundle
とすれば、bundleコマンドは実行されません。
--skip-bundle
を付けてRailsアプリを作ったとしても、その後の一連の rails, rake の実行に支障はないと思いますが、特段の理由がないのであれば、bundleも実行する形にしておくのが無難だと思います。
Railsにおけるbundleの意味合いについては、下のサイトが参考になります。
Bundlerを使ったGemパッケージの管理 - Ruby on Rails入門
〜 以上 〜