セキュリティ系の勉強・その他開発メモとか雑談. Twitter, ブログカテゴリ一覧
本ブログはあくまでセキュリティに関する情報共有の一環として作成したものであり,公開されているシステム等に許可なく実行するなど、違法な行為を助長するものではありません.

Ruby on Rails5 ~アプリケーション作成から編集まで

//

タイトル通りです。笑


アプリケーションの生成

まずは、作業フォルダを作成しましょう!僕はC:\直下に"rails"というフォルダを生成してそこで作業を行いました。以下のコマンドで、railsのアプリケーションが実行したディレクトリ内に生成されます。

//railsフォルダの中にrailsTestフォルダとそのアプリケーションが生成されます。
C:\rails>rails new railsTest

では、サーバーを走らせてみましょう。起動させたいアプリケーションのフォルダ内に移動してから、serverコマンドを実行します。

//ディレクトリの移動
C:\rails>cd railsTest
//アプリケーションの起動
C:\rails\railsTest>rails server

これをしたら、http://localhost:3000/ に接続してみましょう!以下のようなページにつながれば成功です。
f:id:thinline196:20161019004951p:plain

この写真実は少し前に撮ったので古いです。rubyのバージョンは2.3.1です。

自分でViewを作る

HTMLなどでは、最初にindexページが呼ばれますよね。railsでもそんな感じなページを作ることができます。以下のコマンドはrailsTest内にhello_controllerとそこから呼ばれるindexなどの一群を生成してくれます!

C:\rails\railsTest>rails generate controller hello index
   //出力
      create  app/controllers/hello_controller.rb
       route  get 'hello/index'
      invoke  erb
      create    app/views/hello
      create    app/views/hello/index.html.erb
      invoke  test_unit
      create    test/controllers/hello_controller_test.rb
      invoke  helper
      create    app/helpers/hello_helper.rb
      invoke    test_unit
      invoke  assets
      invoke    coffee
      create      app/assets/javascripts/hello.coffee
      invoke    scss
      create      app/assets/stylesheets/hello.scss

ではこのページを開いてみましょう!config/routes.rbファイルに get 'hello/index' と書いてあるので、rails serverコマンドを実行してから、ブラウザで http://localhost:3000/hello/index にアクセスすれば、そのページにつながります。ですが、indexページはデフォルトでつながってほしいので、config/routes.rbファイルの get の部分を以下に書き換えます。

get 'hello' => 'hello#index'

こうすることによって、http://localhost:3000/hello に繋ぐだけで、hello の index に飛ぶことができます!その結果。。
f:id:thinline196:20161022164234p:plain

おや?エラーが出てしまいました。

エラーの解消

railsTestフォルダ内のGemfileを開いて下さい。そして、最下部に以下の文を追加して保存してください。

gem "coffee-script-source" , '1.8.0'

railsTestディレクトリ内で以下のコマンドを実行してください。

C:\rails\railsTest>bundle update coffee-script-source

再びサーバーを立ち上げ、viewを確認してみましょう。

f:id:thinline196:20161022164212p:plain
無事viewを閲覧することができました! app/views/hello/index.html.erb を編集してあげれば、viewが変更されます。