2012-04-16 12 views
0

私は単純なDjangoのWebサイト(実際にはフォーム)をいくつか質問し、Model.save()を使用してSQLデータベースにデータを保存します。ものすごく単純。しかし、ページカウントを行うためのモデルを追加したいと思います。ページのビュー関数が呼び出されるたびにインクリメントされるフィールドを持つ単一のオブジェクトにすぎません。Django - データを失うことなくモデルにデータベースを追加する

今、私はSQLについてほとんど何も知らない。これは大変難しいことではないと思いますが、データベースの仕組みを誤解しているため、すべてのデータを失うことや破棄しないようにしたいと考えています。では、どうやってこれをやることができますか?私はこのような機能を実装するサードパーティ製のアプリケーションについて聞いたことがあるが、学習目的のために自分でやりたいと思っている。

答えて

2

私はあなたの既存のデータがまったく影響を受けない理由を理解していません。 Django内でサポートされている全く新しいテーブルをデータベースに追加することについては、manage.py syncdbを実行するだけです。それがうまくいかない場合は、既存のテーブルを変更するときですが、ここでは実行していません。

いずれにしても、Southを学習して使用すると効果があるはずです。モデルテーブルを維持できるツールを用意することをお勧めします。素晴らしいことだ

(プラス、データベースがバックアップされているので、もちろん、あなたが右、任意のデータを失うことはありませんでしょうか?右?)

+0

、どうもありがとう。私はsyncdbがすべてをリセットしないことを知らなかった。 – Peter

1

新しいモデルを追加しているので、syncdbを実行するだけでモデルの新しいテーブルが作成されます。既存のモデルを変更する場合は、 "ALTER TABLE"ステートメントを使用してデータベーススキーマを手動で更新するか、代わりにSouthを使用する必要があります。

関連する問題