Загрузка страницы

DjangoCon US 2016 - I Didn't Know Querysets Could do That by Charlie Guo

I Didn't Know Querysets Could do That by Charlie Guo

QuerySets and object Managers are a core part of Django, and can be extremely powerful. But I didn't always know about some of their more advanced capabilities.

BASIC METHODS

You have likely used filter(), exclude(), and order_by(). You've even probably used an aggregation method like Sum() or Count(). Less common, however, are query(), only()/defer(), and select_related().

F EXPRESSIONS / Q OBJECTS

For some more complex queries, those basic functions and filters won't cut it. How do you construct a query that needs to check for field A or field B? What do you do if you need to multiply two fields together and then sum them? Look no further than F() and Q().

RAW SQL / THE EXTRA() METHOD

As a last resort, it's entirely possible to use raw SQL queries to get the database results that you need. The sky's the limit, but there are definitely downsides to this approach; pitfalls include SQL injections and database backend portability issues.

MANAGERS

A talk on QuerySets would be incomplete without mentioning Managers, and how to leverage Manager customization to make your life easier. Writing methods on existing Managers, and creating custom ones can go a long way towards being DRY and reducing the potential for errors.

This talk was presented at: https://2016.djangocon.us/schedule/presentation/43/

LINKS:
Follow DjangCon US 👇
https://twitter.com/djangocon

Follow DEFNA 👇
https://twitter.com/defnado
https://www.defna.org/

Видео DjangoCon US 2016 - I Didn't Know Querysets Could do That by Charlie Guo канала DjangoCon US
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
24 августа 2016 г. 23:21:16
00:25:56
Яндекс.Метрика