Django ORM入門|データ取得・保存・更新・削除の基本操作を初心者向けに徹底解説
生徒
「Djangoって聞いたことはあるんですが、データベースの操作が難しそうで不安です…」
先生
「DjangoにはDjango ORMという仕組みがあって、英語の文章のようにデータを操作できます。」
生徒
「プログラミング未経験でも、本当に扱えますか?」
先生
「大丈夫です。まずはデータの保存や取得を、身近なたとえで説明していきます。」
1. Django ORMとは何か?
Django ORMとは、データベースを直接操作する代わりに、Pythonのコードで安全にデータを扱うための仕組みです。ORMは「オーアールエム」と読み、難しそうに聞こえますが、実際はとても便利です。
たとえば、紙の名簿に名前を書く代わりに、専用の入力フォームに名前を書くようなイメージです。Django ORMを使えば、SQLという専門的な言葉を覚えなくても、データの取得や保存ができます。
検索キーワードとしては、Django ORM 入門、Django データベース 操作、Python ORM 初心者などで多く調べられています。
2. モデルとデータベースの関係
Djangoでは「モデル」という設計図を使ってデータを管理します。モデルとは、どんな情報を保存するかを決めたルール表のようなものです。
たとえば、名前と年齢を記録するノートを想像してください。そのノートの書き方を決めるのがモデルです。Django ORMは、このモデルを元に自動でデータベースを操作します。
from django.db import models
class Person(models.Model):
name = models.CharField(max_length=50)
age = models.IntegerField()
この例では、人の名前と年齢を保存するモデルを定義しています。CharFieldは文字、IntegerFieldは数字を表します。
3. データを保存する基本操作
次に、Django ORMを使ってデータを保存する方法を見てみましょう。保存とは、ノートに新しい行を書き足すような作業です。
person = Person(name="太郎", age=20)
person.save()
このコードでは、Personというモデルを使って新しいデータを作り、saveメソッドで保存しています。ボタンを押して登録する感覚に近いです。
Django データ 保存、Django ORM save などのキーワードでよく検索されています。
4. データを取得する方法
保存したデータは、あとから取り出して使うことができます。これをデータ取得と言います。引き出しから必要な書類を取り出すイメージです。
people = Person.objects.all()
allは「すべて」という意味で、保存されている全員分のデータを取得します。難しい指定をしなくても、自然な英語で操作できるのがDjango ORMの特徴です。
5. データを更新する基本操作
次は、すでに保存されているデータを変更する方法です。これは、ノートに書いた内容を消して書き直すような作業です。
person = Person.objects.get(name="太郎")
person.age = 21
person.save()
getは特定の条件に合うデータを一つ取得する命令です。その後、値を変更して保存し直します。
Django ORM 更新、Django データ 編集 といった検索でもよく使われる操作です。
6. データを削除する方法
不要になったデータは削除できます。これは、古いメモを破って捨てるようなイメージです。
person = Person.objects.get(name="太郎")
person.delete()
deleteを使うと、そのデータは完全に消えます。間違って削除しないよう、最初は慎重に使いましょう。
7. Django ORMを使うメリット
Django ORMの大きなメリットは、安全性と分かりやすさです。直接データベースを触らないため、操作ミスが起きにくくなります。
また、Pythonの文法だけ覚えればよいので、初心者でも学習しやすいです。Django ORM クエリ 入門、Django 初心者 データベースといったキーワードで調べる人が多い理由もここにあります。
8. 初心者がつまずきやすいポイント
初心者がよく困るのは、モデルとデータベースの関係が分からなくなることです。モデルは設計図、データベースは実際のノート、と覚えると理解しやすくなります。
また、saveを忘れて変更が反映されないケースも多いです。変更したら必ず保存する、という習慣を身につけましょう。