0

coursera の SAAS コースに従ってレールを学習しようとしています。

走った

rake db:migrate
db:test:prepare  

テストデータベースを作成し、それに対していくつかのキュウリステップを実行します。

test の対応する movie テーブルにいくつかの映画を挿入する方法が必要です。

私は db フォルダに scehma.rb を見ることができます。モデルにも、クラス Movie < ActiveRecord::Base によって作成された Movie テーブルがありますが、テスト dbs に対しては何も作成されていませんか?

testDB 作成ファイルはどこにありますか? DB 内のすべてのテーブル名を見つけるにはどうすればよいですか? 実行するデータベース名さえ知りません:

 SELECT * FROM dbname.sqlite_master WHERE type='table';

また、これを行うためのより良い/簡単な方法があれば、あなたの経験を共有してください. 追加のコメントとしてそれらを言及することはできますが、提案は5分で試すことができ、新しいgemなどをインストールするためにデバッグ時間を費やすことができないものであると期待しています.

ありがとう

4

1 に答える 1

0

すべての環境 (test、dev、prod) のデータベース データ (名前と構成) は、config -> database.ymlファイルで定義されます。このような:

# SQLite version 3.x
#   gem install sqlite3
#
#   Ensure the SQLite 3 gem is defined in your Gemfile
#   gem 'sqlite3'
development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000
于 2012-08-12T23:51:07.707 に答える