既存の mysql データベースを指すように database.yml を構成しました
そこからどのようにモデルを生成できますか?
rails generate model existing_table_name
空のモデルのみを提供します..
既存の mysql データベースを指すように database.yml を構成しました
そこからどのようにモデルを生成できますか?
rails generate model existing_table_name
空のモデルのみを提供します..
Rmreを試すことができます。既存のスキーマのモデルを作成でき、外部キー情報に基づいてすべての関係を作成しようとします。
Rails モデルにはフィールドは表示されませんが、使用することはできます。以下を試してください。ModelName という名前のモデルと "name" というフィールドがあると仮定して、Rails コンソールを起動し、次のように入力します。
ModelName.find_by_name('foo')
DB に存在する名前を指定すると、結果が表示されます。
ただし、Rails は関係を推測しませんが、データベースが Rails の規則に従っている場合、簡単に追加できます。
アップデート
私は、明示性 (「マジック」) のこの特定の欠如が、Rails の初心者にとって混乱の原因になっていることに気付きました。schema.rb
モデルとすべてのフィールドを 1 か所でいつでも見ることができます。また、モデル ファイル内の各モデルのスキーマを確認したい場合は、annotate_models gem を使用できます。これにより、モデル ファイルの先頭にあるコメントに db スキーマが配置されます。
あなたの答えは:
$ rake db:schema:dump
db/schema.db
これにより、DB のスキーマを作成するための new が設定されます。
ActiveRecordはスキーマ定義を解析しません。DBMにテーブル定義を要求し、その場でフィールドを把握します。
移行によってテーブルを変更する場合は、スキーマがあると便利です。
Schema Dumping and You
移行を構築するための参照として使用するためにそれをダンプするのに役立ちます。
ActiveRecordは、テーブルの命名についていくつかの仮定を行い、id
フィールドがタイプとして連番を持つ主キーであることを期待しています。移行を行うと、テーブルやフィールド名、タイプをリファクタリングするのに役立ちますが、DBMのコマンドラインを介して同じことを行うことができます。ActiveRecordのスタイルに従う必要はありませんが、そうすることで奇妙なエラーを回避し、ARが物事を推測して生活を楽にすることができます。
Magic Model Generatorを試すことができます