Mohssen A Mohssen نشر 10 ديسمبر 2021 أرسل تقرير نشر 10 ديسمبر 2021 لدي في قاعدة البيانات جدول users على سبيل المثال وأريد أن أحذف أحد المستخدمين من خلال id المستخدم وقمت بعمل الكود التالي للقيام بهذه المهمة: user = User.query.get(user_id) db.session.delete(user) ولكني أريد أن تتم عملية الحذف بدون تنفيذ إستعلام لجلب بيانات المستخدم، أي حذف المستخدم مباشرة من خلال id مثل جملة Delete في SQL تمامًا كيف أقوم بهذا الأمر؟ 1 اقتباس
1 سامح أشرف نشر 10 ديسمبر 2021 أرسل تقرير نشر 10 ديسمبر 2021 يوفر الكائن query التابع filter_by والتابع filer ، ويمكن إستخدام أي منهما للقيام بهذه المهمة، على النحو التالي: التابع filter: User.query.filter(User.id == 123).delete() التابع filter_by: User.query.filter_by(id=123).delete() لكن إن كان الجدول users مرتبط بجدول آخر ويتم إعداد إستخدام CASCADE في العلاقة، فعليك أن تستخدم الطريقة الموجودة في سؤال أو الطريقة التالية: user = db.session.query(User).filter(User.user_id==123).first() db.session.delete(user) كما يجب أن تقوم بعمل commit لهذه التغيرات من خلال السطر التالي: db.session.commit() لمزيد من المعلومات عن التابع filter يمكنك أن تلقي نظرة على هذه المقالات هنا: 1 اقتباس
السؤال
Mohssen A Mohssen
لدي في قاعدة البيانات جدول users على سبيل المثال وأريد أن أحذف أحد المستخدمين من خلال id المستخدم وقمت بعمل الكود التالي للقيام بهذه المهمة:
ولكني أريد أن تتم عملية الحذف بدون تنفيذ إستعلام لجلب بيانات المستخدم، أي حذف المستخدم مباشرة من خلال id مثل جملة Delete في SQL تمامًا
كيف أقوم بهذا الأمر؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.