0

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

今、私はSQLについてほとんど何も知りません。これはそれほど難しいことではないと思いますが、データベースの動作について少し誤解しているため、すべてのデータが失われたり壊れたりすることは避けたいと思います。では、どうすればこれを実行できますか?そのような機能を実装するサードパーティのアプリについて聞いたことがありますが、学習目的で自分で実行したいと思います。

4

2 に答える 2

2

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

とはいえ、 Southを学び、使用することは、いずれにせよ有益であると言わなければなりません。モデルテーブルを維持できるツールを用意することをお勧めします。

(もちろん、データベースがバックアップされているため、データが失われることはありませんよね?)

于 2012-04-16T21:52:42.897 に答える
1

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

于 2012-04-16T21:51:48.963 に答える