Open5
Rails お勉強
rails コマンド 短縮形
例えば generate だと普通に書けば下記だが
rails generate model User name:string email:string
下記のように叩くこともできる
rails g model User name:string email:string
一般 | 短縮 |
---|---|
rails server | rails s |
rails console | rails c |
rails generate | rails g |
rails test | rails t |
bundle install | bundle |
bundle
は Gemfile
にある gem
を install
するためのコマンドなので node.js
の npm
と package.json
みたいな関係っぽい。
間違った generate を戻したい
下記を叩くと model に関連するファイルが追加されたり更新されたりする。
controller の場合
rails generate controller Company about
model の場合
rails generate model User name:string email:string
叩いた後で model の命名変えたいな〜、失敗した〜となった場合、無かったことにできるコマンドが存在する。
それが下記だ。
controller の場合
rails destroy controller Company about
model の場合
rails destroy model User
model の場合は model名以外の引数は不要。
root_url を使いたい
routeを定義している下記ファイルに root
を定義してあげる。
app/config/routes.rb
Rails.application.routes.draw do
root 'static_pages#home'
end
すると view で下記のように扱えるようになる
app/views/static_pages/about.html.erb
<p>
<%= root_url %>
</p>
htmlテンプレートについて
index.html.erb
というファイル形式を views
配下に置く。
基本的な構文は ejs
と同じ。
対応する controller
から値を受け取ることができる。
次のような controller
の場合
app/controllers/hoge_controller.rb
次のような感じのファイルでviewを作成していく。
app/views/hoge/index.html.erb
テスト結果をきれいに見せたい
Gemfile
にある minitest-reporters
という gem
を利用する。
test/test_helper.rb
に以下を追加する。
test/test_helper.rb
ENV["RAILS_ENV"] ||= "test"
require_relative "../config/environment"
require "rails/test_help"
+ require "minitest/reporters"
+ Minitest::Reporters.use!
class ActiveSupport::TestCase
# Run tests in parallel with specified workers
# 指定のワーカー数でテストを並列実行する
parallelize(workers: :number_of_processors)
# Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
# test/fixtures/*.ymlにあるすべてのfixtureをセットアップする
fixtures :all
# Add more helper methods to be used by all tests here...
# (すべてのテストで使うその他のヘルパーメソッドは省略)
end