[解決済み] rails db:migrate vs rake db:migrate
質問
railsの初心者です。rails 5でデータマイグレーションを生成する際、一部の人が
rails db:migrate
の上に
rake db:migrate
. データベースマイグレーションにおけるrailsとrakeコマンドの違いを誰か説明してください。rakeコマンドはrails 5で廃止されたということでしょうか?
どうもありがとうございます。
どのように解決するのですか?
Railsのコアチームは、rakeが行うすべてのことをrailsコマンドがサポートするようにすることで、一貫性を持たせることを決定しました。
例えばRails 5のコマンドは
db:migrate
,
db:setup
,
db:test
などは、Rails 4ではrakeコマンドの一部としてサポートされていましたが、railsコマンドでサポートされるようになりました。しかし、Rails 4のときと同じようにrakeを使ってこれらのコマンドを実行することは可能です。これは、Railsコミュニティが、コマンドオプションをrakeからrailsに完全に移行する代わりに、Rake Proxyを導入したためです。
内部で起こっていることは
rails db:migrate
コマンドが実行されると、Railsは
db:migrate
がrailsがネイティブにサポートしているものであるかどうかをチェックします。この場合
db:migrate
はrailsがネイティブでサポートしていないため、RailsはRake Proxyを介してRakeに実行を委ねます。
Rails 5でrailsがサポートしているすべてのコマンドを確認したい場合は、以下のコマンドを実行することで長いオプションのリストを得ることができます。
rails --help.
関連
-
[解決済み] Rubyの文字列から日付への変換
-
[解決済み] AWS S3です。アクセスしようとしているバケットは、指定されたエンドポイントを使用してアドレスされている必要があります。
-
[解決済み] どなたか、collection_selectをわかりやすく説明していただけませんか?
-
[解決済み] railsアプリケーションでCookieのオーバーフロー?
-
[解決済み] バリデーションなしで属性を更新する方法
-
[解決済み] bundle install --without production は何をするのですか?
-
[解決済み] 未初期化の定数 "コントローラ名"
-
[解決済み] Ruby on Railsのマイグレーションでデータベースのカラムの名前を変更するにはどうすればよいですか?
-
[解決済み] rake db:migrate db:reset とdb:schema:loadの違いについて
-
[解決済み】rakeタスクにコマンドライン引数を渡す方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】なぜRuby on Railsは、http://localhost:3000 の代わりに http://0.0.0.0:3000 を使用するのですか?
-
[解決済み】bcrypt LoadError: Cannot load such file
-
[解決済み] Ruby on Railsのランナー
-
[解決済み] Rails のインストールに失敗する: activesupport には Ruby のバージョン >= 2.2.2 が必要です。
-
[解決済み] ウェブパッカーがアプリケーションを見つけ出せない
-
[解決済み] nil:NilClass の未定義メソッド `each'... なぜ?
-
[解決済み] railsアプリケーションでCookieのオーバーフロー?
-
[解決済み] RoRにおけるSpringサーバーの機能とは?
-
[解決済み] Rspec が私のモデルクラスを認識しない。初期化されていない定数エラー
-
[解決済み] rake db:migrate db:reset とdb:schema:loadの違いについて