21

間に違いがあるかどうかは誰にもわかりますか

>manage.py flush  # or reset

>manage.py sqlclear appname | python manage.py dbshell
>manage.py syncdb 
4

2 に答える 2

17

フラッシュは切り捨てます (データを削除します)

sqlclearはドロップします(テーブルを削除するため、データも削除されます)

=> データベースに構造的な変更がある場合は、sqlclear を実行する必要があります (ただし、 south を使用することをお勧めします)

アップデート:

は廃止されました。

Django 1.7 以降では、マイグレーションは Django のコアに組み込まれています。以前のバージョンを実行している場合は、Southを使用できます。

于 2012-10-22T18:50:05.933 に答える
5

の公式ドキュメント

フラッシュsqlclear

フラッシュはデータベース全体でSQLドロップを実行し、sqlflushはフラッシュが実際に実行するSQLのみを出力します(これもデータベース全体で)。sqlclearは、特定の1つまたは複数のアプリのSQLドロップを出力します。flushとsqlflush/dbshel​​l/syncdbの両方がフィクスチャをインストールします。

于 2011-09-29T13:36:34.703 に答える