ryoです。昨日はHello Qiitaしました。
1日1記事目指して頑張ります。三日坊主になる可能性大。
今日はrailsのアプリ新規立ち上げに必要な最低限のセットを記入していこうと思います。
この記事で出来るようになること
railsのアプリ基本的な状態を作れるターミナルのコマンドの存在を知る。
*環境設定は済んでる前提で進めます。
目次
1. 今回使うコマンド一覧
2. 各コマンドの解説
3. ルートパスの設定
##今回使うコマンド一覧
最初に使うコマンドを置いておいて、その後に各行の解説をします。
cd ~/projects/
rails new test-app -d mysql
cd test-app/
rails g scaffold test
bundle exec rake db:create
bundle exec rake db:migrate
今回解説するの、これだけです。
上から順にコマンドをコピペしたら
projectsフォルダに
test-appというrailsのアプリが立ち上げられて
scaffoldというもので7つのアクションのコントローラ、モデル、ビュー、マイグレーションファイルが作られて
データベースが作成されます。
各コマンドの解説
cd ~~~で作業行うディレクトリ(フォルダ)の移動です。Change Directoryの略のcdです。
アプリを作りたいフォルダに移動しましょう。
cd ~/projects/
rails new ~~(ファイル名) -d mysqlでアプリの一式を作って
そのディレクトリ(フォルダ)に移動しましょう
rails new test-app -d mysql
cd test-app/
scaffoldのでマイグレーションファイル、モデル、ルーティングの設定、コントローラ、ビュー諸々を作ってもらいましょう。
rails g scaffold test (ここでカラムを指定すればカラムも作成できます)
例 rails g scaffold test name:string price:integer
出力結果は下記
hogehogenoMacBook-Air:test_app hogehoge$ rails g scaffold test
Running via Spring preloader in process 5748
invoke active_record
create db/migrate/20191025054108_create_tests.rb
create app/models/test.rb
invoke test_unit
create test/models/test_test.rb
create test/fixtures/tests.yml
invoke resource_route
route resources :tests
invoke scaffold_controller
create app/controllers/tests_controller.rb
invoke erb
create app/views/tests
create app/views/tests/index.html.erb
create app/views/tests/edit.html.erb
create app/views/tests/show.html.erb
create app/views/tests/new.html.erb
create app/views/tests/_form.html.erb
invoke test_unit
create test/controllers/tests_controller_test.rb
create test/system/tests_test.rb
invoke helper
create app/helpers/tests_helper.rb
invoke test_unit
invoke jbuilder
create app/views/tests/index.json.jbuilder
create app/views/tests/show.json.jbuilder
create app/views/tests/_test.json.jbuilder
invoke assets
invoke scss
create app/assets/stylesheets/tests.scss
invoke scss
create app/assets/stylesheets/scaffolds.scss
hogehogenoMacBook-Air:test_app hogehoge$
データベースを作成し、マイグレートしましょう。
bundle exec rake db:create
bundle exec rake db:migrate
これで基本的なファイルは一通りできました。
最後にroutes.rbにルートパスを設定する記述をして終わりましょう。
Rails.application.routes.draw do
resources :tests
#下記を追記
root to: "tests#index"
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end
これで、rails s でlocalhostに接続したらtestsのインデックスのビューが表示されます。お疲れ様でした。