Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? db/schema.rbは何に使われるのか rake db:migrateなどをすると現在のスキーマが反映され、スキーマの確認などに便利なschema.rb。 ふと、1つのRailsアプリを分割して、複数のRailsアプリから同じDBを参照するようにしたくなったのだが、その際にどちらのRailsアプリにもdb/schema.rbを含める必要があるのか気になった。 db/schema.rbを削除してもアプリは動くのだが、 schema.rbには「It's strongly recommended that you check this f
DBのスキーマ、皆様どのように管理されているでしょうか。 Railsを利用されている方の多くは、ActiveRecordのマイグレーションを利用して管理をされているかと思います。 私もいままでいくつかのRailsプロジェクトに関わってきましたが、 ほぼ全てのプロジェクトでActiveRecordのDBマイグレーションを利用してきました。 (一部のプロジェクトはActiveRecordを使っていないため、マイグレーションも独自のものを利用しています) ActiveRecordのマイグレーションでは、DBスキーマ変更の差分情報をマイグレーションスクリプトとして保存しておきます。例えば、新しいテーブル「users」を作成する場合は、下記のようなマイグレーションスクリプトを作成します。 class AddUsers < ActiveRecord::Migration def up # ここにマイグ
Migrations are a feature of Active Record that allows you to evolve your database schema over time. Rather than write schema modifications in pure SQL, migrations allow you to use a Ruby Domain Specific Language (DSL) to describe changes to your tables. After reading this guide, you will know: Which generators you can use to create migrations. Which methods Active Record provides to manipulate you
開発中のアプリでは、他人または自分の書いたmigrationsやそこから作られたschema.rbを使ってデータベースの構造を更新します。この時rake db:resetやrake db:migrate:resetのようなコマンドを使用します。これらの違いについてまとめます。rake db:resetはdbをドロップし、db/schema.rbにもとづいてcreateします http://guides.rubyonrails.org/migrations.htmlに書かれているように、rake db:resetはデータベースをdropし、db/schema.rbに書かれている現在のschemaをロードします。 db/migrate以下のファイルに書かれているマイグレーションを新たに読み込んだりせず、あくまでも現在のdb/schema.rbの内容でデータベースを作ります。 rake db:m
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く