﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
29148	Explain how to use QuerySet.get_or_create() with Q objects	Mike Lissner	Dhruv Singh	"This technique is useful if you want to use Q objects in conjunction with the get or create method, and it's documented in a few places around the web. 

I brought this up in the forums yesterday and somebody suggested that it be documented: 

https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/django-developers/e3sJ6OiHEd0/Yrg-Z9uRAgAJ

I gave this a try, but I don't understand the documentation system and I sadly don't have time to figure it out. Seems though like a change could go here:

https://github.com/django/django/blob/master/docs/ref/models/querysets.txt#L1886

I think something along the lines of:

> get_or_create() can be used with Q objects by chaining them together like so:
>
> An example
>
> When this is done, the logic performs as above, but matches are made according to the query in the Q object. 

I imagine this also works for update_or_create, but I'm not sure how to document that too. Maybe just a quick mention:

> update_or_create() can be used with Q objects using the same technique as documented above for get_or_create()"	New feature	closed	Documentation	2.0	Normal	fixed		Dhruv Singh Herbert Fortes	Accepted	1	0	0	1	1	0
