Djangoで既存のデータベースからデータをフェッチする方法

Djangoでは既存のデータベースのデータを取得するためのモデル(Model)を利用できます。

最初にDjangoプロジェクトを作成し、データベースへの接続情報を設定してください。

次に、データベースのテーブルを表すモデルを作成する必要があります。Django では、モデルは django.db.models.Model を継承する Python クラスです。たとえば、データベースに Person という名前のテーブルがあるとします。それに対応するモデルクラスを以下のように作成できます。

from django.db import models

class Person(models.Model):
    name = models.CharField(max_length=100)
    age = models.IntegerField()

上の例では、Personモデルはnameとageという2つのフィールドを持ち、それらはデータベースのnameとageのフィールドに対応しています。

モデルを定義すると、Djangoは自動的にモデルのデータベーステーブルを生成します。提供されたDjangoのデータベースマイグレーションツールを使用してデータベースマイグレーションを実行し、データベーステーブルを作成または更新することができます。

完成上述步骤后,你可以使用模型的查询方法来获取已有数据库的数据。例如,要获取Person模型中的所有记录,你可以使用以下代码:

persons = Person.objects.all()

記載のコードはPerson テーブルのデータベースにあるすべてのレコードを表すQuerySet オブジェクトを返します。 QuerySet オブジェクトを介して各レコードのフィールドの値にアクセスできます。例えば、すべての人の名前と年齢を出力するには、以下のコードを使用できます。

for person in persons:
    print(person.name, person.age)

Djangoでは、`all`メソッドのほかに、`filter`、`exclude`、`get`など、条件を指定してデータベースからデータを取得するためのさまざまなクエリメソッドを提供しています。状況に応じて適切なクエリメソッドを選択してください。

データベースからデータを取得するには、データベースのテーブルを表すモデルを定義し、モデルのクエリメソッドを使用してデータを取得します。

bannerAds