إنشاء الصفوف
جزء من قسم النماذج ولوحة الإدارة في رحلة Django على Coddy. الدرس 7 من 23.
يحتاج رفّك إلى كتب جديدة، ولن تكتب SQL أبدًا، وهي اللغة التي تتحدث بها قواعد البيانات. لكل نموذج Book.objects، وهو المدير الخاص به: تقرأ طرائقه الجدول وتكتب فيه. يحوّل ORM (رابط الكائنات العلائقي) تلك الاستدعاءات إلى SQL. في هذا الفصل، تكتب شيفرة ORM في explore.py. يضيف Run تسعة كتب، ثم يشغّل الملف بالطريقة التي يشغّله بها python manage.py shell < explore.py، وما يطبعه يظهر في وحدة التحكم.
Book.objects.create(title="Beloved", author="Toni Morrison", year=1987, price="13.00")تنشئ create() صفًا وتحفظه في خطوة واحدة؛ ويأخذ الحقل الذي تتركه دون تحديد قيمته الافتراضية. ويمكن فعل الشيء نفسه على خطوتين، مع إجراء تغيير بينهما:
silmarillion = Book(title="The Silmarillion", author="J.R.R. Tolkien", year=1977, price="10.50")
silmarillion.is_read = True
silmarillion.save()إلى أن تُنفَّذ save()، لا يعيش الكائن إلا في Python وتكون قيمة id هي None.
التحدي
سهلفي explore.py، أضف كتابين فوق print.
- باستخدام
create():Project Hail Maryمن تأليفAndy Weir، سنة2021، السعر12.99، من الخيال العلمي. خزّن قيمة النوع،scifi، لا التسمية؛ خذها من الفئةGenreلديك. - أنشئ كائنًا من
Bookواستدعِsave():Klara and the Sunمن تأليفKazuo Ishiguro، سنة2021، السعر11.50.
اضغط «العب»: ستعرض وحدة التحكم 11 books on the shelf.
جرّب بنفسك
from books.models import Book
# أضف الكتابين هنا.
print(Book.objects.count(), "books on the shelf")
جميع دروس النماذج ولوحة الإدارة
2الاستعلام باستخدام ORM
إنشاء الصفوفAll وGetالتصفية وعمليات البحثعدّ الصفوفترتيب الصفوفالتحديث والحذفتدرّب بنفسك: Playground لـ Django