افزودن داده (Insert Data)
در این بخش «افزودن داده در جنگو» را تمرین می کنیم. «داده (Data)» یعنی اطلاعات واقعی، مثل اسامی اعضا. با پوسته پایتون، رکورد می سازیم و ذخیره می کنیم؛ مثل ثبت نام های جدید در دفتر مدرسه.
شروع با پوسته پایتون (Shell)
پوسته پایتون یک محیط تعاملی است. فرمان ها را یکی یکی می زنیم و نتیجه را فوری می بینیم.
python manage.py shell
گام 1: ایمپورت مدل
مدل «Member» را وارد کن. «ایمپورت (Import)» یعنی قابل استفاده کردن یک کد در جای دیگر.
from members.models import Member
گام 2: دیدن وضعیت جدول
«کوئری ست (QuerySet)» یعنی فهرست نتایج از دیتابیس. الان خالی است.
Member.objects.all()
گام 3: افزودن یک رکورد
«رکورد (Record)» یعنی یک سطر داده. اول می سازیم، بعد ذخیره می کنیم.
member = Member(firstname='Emil', lastname='Refsnes')
member.save()
نکته: تا زمانی که save() نزنی، چیزی در دیتابیس ثبت نمی شود.
گام 4: بررسی نتیجه
برای دیدن ستون ها و مقادیر، از values() استفاده کن.
Member.objects.all().values()
گام 5: افزودن چند رکورد
می توانی چند نمونه بسازی و در یک حلقه ذخیره کنی. «حلقه (Loop)» یعنی تکرار منظم کارها؛ مثل حضور و غیاب دانش آموزان.
member1 = Member(firstname='Tobias', lastname='Refsnes')
member2 = Member(firstname='Linus', lastname='Refsnes')
member3 = Member(firstname='Lene', lastname='Refsnes')
member4 = Member(firstname='Stale', lastname='Refsnes')
member5 = Member(firstname='Jane', lastname='Doe')
members_list = [member1, member2, member3, member4, member5]
for x in members_list:
x.save()
هشدار: اگر زیاد ذخیره می کنی، بهتر است از bulk_create() استفاده شود تا سریع تر شود.
نمایش دوباره داده ها
حالا همه اعضا را با مقادیرشان ببین.
Member.objects.all().values()
مسیر مطالعه بعدی
- مرور مدل ها در مدل ها برای درک بهتر فیلدها.
- شناخت لیست نتایج در کوئری ست ها برای فیلتر و مرتب سازی.
جمع بندی سریع
- افزودن داده در جنگو با
save()انجام می شود. QuerySetفهرست نتایج از دیتابیس است.- برای چند رکورد، از حلقه یا
bulk_create()کمک بگیر. - همیشه پس از تغییر، خروجی را با
values()چک کن.
برای «افزودن داده در جنگو» دوباره سر بزن به افزودن داده در جنگو. همچنین آدرس دهی را در آدرس ها و نمایش را در قالب ها ببین.