PyConES 2017
Héctor Pablos López
Héctor Pablos López
Front-End developer @ StyleSage
www.stylesage.co
hector@stylesage.co
ORM
Un valor (simpe o calculado) que se puede usar en una orden de DML
.filter(expression)
.order_by(expression)
.annotate(expression)
.aggregate(expression)
Representa el valor de un campo
Car.ojects.filter(kilometers=F('build_year'))
SELECT * FROM car
WHERE car.kilometers = car.build_year
Encapsulan colecciones de argumentos con nombre
Car.ojects.filter(Q(kilometers__gt=1000) | Q(build_year__lt=1990))
SELECT * FROM car
WHERE car.kilometers > 1000 OR car.build_year < 1990
Anotar (dar nombre) a una expresión
Company.objects.annotate(num_products=Count('products'))
SELECT count(*) AS num_products FROM company
Combinar expresiones