آموزش جستجوی پیشرفته در MongoEngine

3 سال پیش
آموزش جستجوی پیشرفته در MongoEngine

آموزش جستجوی پیشرفته در MongoEngine

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش جستجوی پیشرفته در MongoEngine خواهیم پرداخت.

پیشنهاد ویژه : پکیج آموزش پایتون مختص بازار کار

برای اینکه کارایی بیشتری در بازیابی زیرمجموعه ای از فیلدها داشته باشید ، از روش ویژگی Objects فقط استفاده کنید. این امر به ویژه در زمینه هایی با طول بسیار زیاد مانند ListField عملکرد قابل توجهی را بهبود می بخشد. قسمت مورد نیاز را فقط به تابع ()only منتقل کنید. اگر پس از اجرای ()only پرس و جو  به سایر فیلدها دسترسی پیدا شود ، مقدار پیش فرض باز می گردد.

from mongoengine import *
con=connect('newdb')
class person (Document):
name=StringField(required=True)
city=StringField(default='Mumbai')
pin=IntField()
p1=person(name='Himanshu', city='Delhi', pin=110012).save()
doc=person.objects.only('name').first()
print ('name:',doc.name)
print ('city:', doc.city)
print ('PIN:', doc.pin)

 

خروجی

 

name: Himanshu
city: Mumbai
PIN: None

 

توجه – از مقدار مشخصه شهر به عنوان پیش فرض استفاده می شود. از آنجا که پیش فرض برای پین مشخص نشده است، هیچکدام را چاپ نمی کند.

اگر به فیلدهای گمشده نیاز دارید، می توانید تابع ()reload را فراخوانی کنید.

هنگامی که یک کلاس سند دارای ListField یا DictField است ، در حالی که از طریق آن تکرار می شود ، هر یک از اشیا DB DBREf به طور خودکار از آن استفاده می شود. برای افزایش کارآیی بیشتر ، به ویژه اگر سند دارای ReferenceField باشد، می توان با استفاده از تابع select_related () QuerySet را در یک لیست تبدیل کرده و مرجع دهی مجدد را ایجاد کرد، تعداد سوالات را محدود کرد.

MongoEngine API شامل کلاس Q است که برای ساخت نمایشگرهای پیشرفته متشکل از تعداد محدودیت مفید است. Q بخشی از پرس و جو را نشان می دهد که می تواند با نحو استدلال کلمه کلیدی و باینری و و اپراتورها آغاز شود.

person.objects(Q(name__startswith=’H’) &Q(city=’Mumbai’))

 

منبع.

 

لیست جلسات قبل آموزش MongoEngine

  1. آموزش MongoEngine
  2. آموزش MongoDB در MongoEngine
  3. آموزش قطب نما MongoDB در MongoEngine
  4. آموزش نگاشت کننده اسناد شی در MongoEngine
  5. آموزش نصب MongoEngine
  6. آموزش اتصال به پایگاه داده MongoDB در MongoEngine
  7. آموزش کلاس Document در MongoEngine
  8. آموزش طرح پویا در MongoEngine
  9. آموزش کلاس Field در MongoEngine
  10. آموزش افزودن / حذف سند در MongoEngine
  11. آموزش استعلام پایگاه داده در MongoEngine
  12. آموزش فیلترها در MongoEngine
  13. آموزش عملگرهای Query در MongoEngine
  14. آموزش روش های QuerySet در MongoEngine
  15. آموزش مرتب سازی در MongoEngine
  16. آموزش مجموعه کوئری های سفارشی در MongoEngine
  17. آموزش نمایه ها در MongoEngine
  18. آموزش aggregation در MongoEngine
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه