2

大量のデータとテーブルを含む Mysql データベースがあります。しかし、私の新しい Rails アプリケーションでこの Mysql データを使用する方法を知る必要があります。少し前からRailsを学んでいます。モデルとコントローラーを作成する足場の作成の基本は知っていますが、DB をインポートして使用する方法は不明です。誰かがこれを乗り越える方法について説明したり、リンクを提供したりできますか.

これは単純な足場を実行した後の私の移行でrake db:migrateあり、そこに電子メール文字列を追加した後に実行しましたが、何も起こりませんでした..:

class CreateProducts < ActiveRecord::Migration
  def change
    create_table :products do |t|
      t.string :title
      t.text :description
      t.string :image_url
      t.decimal :price, :precision => 8, :scale => 2
>>    t.string :email
      t.timestamps
    end
  end
end
4

3 に答える 3

1

そのデータを現在のデータベースからアプリのデータベースにインポートする必要がある場合は、Sequel Proを使用することをお勧めします。これは、MySQL の優れた GUI です。これを使用して、必要なデータベースを .csv ファイルとしてエクスポートし、新しいデータベースにインポートできます。

移行に関しては、足場を実行して実行rake db:migrateすると、データベースがセットアップされます。データは追加されません。ここでは、productsテーブルを作成するように設定し、属性のデータ型を指定しました。

ただし、そこにデータを取得するには、アプリケーションのフォームを介して行うか、データをインポートする必要があります。

于 2013-02-04T06:19:36.400 に答える
0

その前に、Rails とその規則について詳しく学んでください。おそらく、データベース スキームを調整する必要があります。または、アプリケーションを起動してから、SQL または CSV を使用してデータをインポートすることもできます。データの移行は面倒な作業ですが、必要な作業です。

実際のスキーマに依存するため、この宝石をチェックして、ケースに役立つかどうかを確認できます。

または、この考え方に従って、古いデータベースからデータベース スキーマとデータを読み込むこともできます。Rails の規則に従わないと失敗します。

于 2013-06-05T21:29:21.640 に答える
0

過去のプロジェクトでそれを行ったことがありますが、Rails では確実に可能です。

Ruby on Rails でレガシー データベースを使用できます。また、同じ Rails プロジェクト内で複数のデータベースを使用することもできます。

レガシ MySQL データベースで Rails を使用する方法と、レガシ テーブルでうまく機能するようにモデルを微調整する方法について詳しく説明している本があります: http://www.amazon.com/Pro-Active-Record-Databases-Experts /dp/1590598474

命名などを修正するために生成されたコードの多くを変更する必要があるため、従来のテーブルに足場を使用しても、おそらくそれほど遠くはありません。

Rails アプリケーション用の新しいテーブル/モデルもある場合は、Rails プロジェクトで 2 つのデータベースを使用することをお勧めします。1 つはレガシー データ用、もう 1 つは新しいモデル用です。

于 2013-06-06T01:37:12.377 に答える