0

Faker gem を使用して、開発データベースに 20 人のユーザーのダミー データを入力しました。

「created_at」時刻を含めるのを忘れたので、手動で作成した詳細なユーザー レコードよりも前にすべての順序が付けられました。次のいずれかを行います。

1) 20 人のダミー ユーザーを削除し、古い「created_at」時刻で再設定します。または、

2) 20 人のダミー ユーザーの「created_at」属性を古い時間で更新します。

初期人口レーキを元に戻す方法があれば、オプション 1 は簡単です。これを行う方法はありますか?

ありがとう!

4

1 に答える 1

1

Rails では、rake タスク以外にデータベース内のデータを削除するオプションはありません。

この場合、あまり手間がかからないため、オプション 1の方が適していると思います。created_at は recored の作成中に自動的に更新されるため、それを行う必要はありません。users テーブルからデータを削除するだけです。

ターミナルのプロジェクト フォルダーに rails db と入力し、次のコマンドを入力します

delete from users where id in ( select id from users order desc LIMIT 20)

最後の 20 ユーザーを削除します。

新しい移行を作成して、 created_at 列をテーブルに追加します。

rake タスクを実行します。

すべてが完璧になります!

ありがとう

于 2012-09-20T19:41:33.537 に答える