SUBJECTS
|
BROWSE
|
CAREER CENTER
|
POPULAR
|
JOIN
|
LOGIN
Business Skills
|
Soft Skills
|
Basic Literacy
|
Certifications
About
|
Help
|
Privacy
|
Terms
|
Email
Search
Test your basic knowledge |
Django Queryset
Start Test
Study First
Subject
:
it-skills
Instructions:
Answer 50 questions in 15 minutes.
If you are not ready to take this test, you can
study here
.
Match each statement with the correct term.
Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.
This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. This query uses an F object to increment the pingback count for every entry in the blog.
Warning
: Invalid argument supplied for foreach() in
/var/www/html/basicversity.com/show_quiz.php
on line
183
2. If this option is True - Django will store empty values as NULL in the database. Default is False.
null
unique
get_or_create(**kwargs)
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
3. Returns True if the QuerySet contains any results - and False if not. This tries to perform the query in the simplest and fastest way possible - but it does execute nearly the same query. This means that calling this method on a queryset is faster th
values_list(*fields)
exists()
related_name
delete()
4. By default - results returned by a QuerySet are ordered by the ordering tuple given by the ordering option in the model's Meta. You can override this on a per-QuerySet basis by using the this method.
order_by(*fields)
distinct()
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
many-to-one relationship
5. This class type is useful when you just want to use the parent class to hold information that you don't want to have to type out for each child model. This class isn't going to ever be used in isolation. When it is used as a base class for other mode
Multi-table inheritance
Abstract base class
get(**kwargs)
Proxy model
6. Accomplish this by using the field name of related fields across models - separated by double underscores - until you get to the field you want. For example - to get all Entry objects with a Blog whose name is 'Beatles Blog': Entry.objects.filter(blo
OneToOneField
default
relationship spanning
contains
7. Can be used to remove all many-to-many relationships for an instance
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
__unicode__()
distinct()
clear() method
8. Lookup type that returns results greater than a given value.
gt
choices tuple
delete()
Multi-table inheritance
9. Performs an SQL delete query on all rows in the QuerySet. This method is applied instantly. You cannot call this method on a QuerySet that has had a slice taken or can otherwise no longer be filtered.
Q(question__istartswith='What')
delete()
values_list(*fields)
Manager methods
10. Defines a one-to-one relationship. You use it just like any other Field type: by including it as a class attribute of your model.
in
OneToOneField
lte
in_bulk(id_list)
11. a QuerySet can be sliced - using Python's array-slicing syntax.
istartswith
ForeignKey
slicing
gt
12. A manager method that returns a new QuerySet containing objects that do not match the given lookup parameters.
exclude(**kwargs)
values_list(*fields)
update(**kwargs)
choices tuple
13. This gives your model metadata.
endswith
week_day
Meta class
==
14. Lookup type that returns results less than or equal to a given value.
lte
iterator()
primary_key
Q(question__istartswith='What')
15. Sometimes - the Django query syntax by itself can't easily express a complex WHERE clause. For these edge cases - Django provides this QuerySet modifier -- a hook for injecting specific clauses into the SQL generated by a QuerySet.
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
pk
help_text
ForeignKey
16. A Manager method that returns a new QuerySet containing objects that match the given lookup parameters.
lte
filter(**kwargs)
__unicode__()
choices tuple
17. This method is more or less the opposite of defer(). You call it with the fields that should not be deferred when retrieving a model. If you have a model where almost all the fields need to be deferred - using this method to specify the complementary
slicing
week_day
count()
only(*fields)
18. Lookup type that corresponds to a boolean full-text search - taking advantage of full-text indexing. This is like contains but is significantly faster due to full-text indexing.
startswith
ordered
Entry.objects.filter(pub_date__range=(start_date - end_date))
search
19. This field is added automatically - but this behavior can be overridden
defer(*fields)
get(**kwargs)
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
id field
20. Lookup type that returns results greater than or equal to a given value.
iregex
exact
update(**kwargs)
gte
21. A convenience method for looking up an object with the given kwargs - creating one if necessary.
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
Manager
get_or_create(**kwargs)
==
22. Takes the ouput of one filter and uses it as input for another filter. This works because a refinement of a QuerySet is itself a QuerySet.
Entry.objects.filter(pub_date__year=2005).delete()
annotate(args - *kwargs)
filter chaining
|
23. This model type is useful if you only want to modify the Python-level behavior of a model - without changing the models fields in any way. This creates a stand-in for the original model. You can create - delete and update instances of this new model
all()
search
Proxy model
Entry.objects.filter(id__in=[1 - 3 - 4])
24. Returns an integer representing the number of objects in the database matching the QuerySet. This never raises exceptions.
get(**kwargs)
count()
default
istartswith
25. These add custom "row-level" functionality to your objects. These act on a particular model instance.
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
OneToOneField
endswith
Custom model methods
26. Negation operator for Q objects.
choices tuple
month
~
ForeignKey
27. Lookup type that finds a case-sensitive regular expression match.
regex
when you add new apps to INSTALLED_APPS
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
save()
28. Returns a DateQuerySet -- a QuerySet that evaluates to a list of datetime.datetime objects representing all available dates of a particular kind within the contents of the QuerySet.
Warning
: Invalid argument supplied for foreach() in
/var/www/html/basicversity.com/show_quiz.php
on line
183
29. A convenience method for constructing an object and saving it all in one step.
delete()
&
filter(**kwargs)
create(**kwargs)
30. If you pickle a QuerySet - this will force all the results to be loaded into memory prior to pickling. When you unpickle a QuerySet - it contains the results at the moment it was pickled - rather than the results that are currently in the database.
get_or_create(**kwargs)
pickling
Many-to-many relationship through an intermediate model
iterator()
31. In this case - an intermediate model can have multiple foreign keys to the source model. Here - two foreign keys to the same model are permitted - but they will be treated as the two (different) sides of the many-to-many relation.
Custom model methods
update()
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
Many-to-many relationship to self
32. A Q object that encapsulates queries for entries with a question value that starts with 'What' in a case-insensitive fashion.
Warning
: Invalid argument supplied for foreach() in
/var/www/html/basicversity.com/show_quiz.php
on line
183
33. Returns the most recent object in the table - by date - using the field_name provided as the date field.
Manager methods
iteration
model
latest(field_name=None)
34. Defined by a OneToOneField. You use it just like any other Field type: by including it as a class attribute of your model.
intermediate models
one-to-one relationship
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
Proxy model
35. Extra text to be displayed under the field on the object's admin form to provide assistance to users. It's useful for documentation even if your object doesn't have an admin form.
all()
help_text
gt
day
36. Returns the object matching the given lookup parameters
endswith
ForeignKey
Entry.objects.filter(pub_date__year=2005).delete()
get(**kwargs)
37. In some complex data-modeling situations - your models might contain a lot of fields - some of which could contain a lot of data (for example - text fields) - or require expensive processing to convert them to Python objects. If you are using the res
defer(*fields)
iregex
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
in_bulk(id_list)
38. Lookup type that returns results less than a given value.
contains
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
Field lookups
lt
39. Use this method to reverse the order in which a queryset's elements are returned. Calling this method a second time restores the ordering back to the normal direction.
pickling
reverse()
blank
choices
40. When to run syncdb
values(*fields)
when you add new apps to INSTALLED_APPS
Q(question__istartswith='What')
update(**kwargs)
41. Keyword shortcut for looking up an object by primary key.
many-to-many relationship
exact
==
pk
42. Here - you can't use add - create - or assignment (i.e. - beatles.members = [...]) to create relationships. You need to specify all the detail for the relationship required by the intermediate model.
day
ForeignKey
lte
Many-to-many relationship through an intermediate model
43. Fields are specified by these
Entry.objects.filter(id__gt=4)
Multi-table inheritance
class attributes
&
44. This style of inheritanc is useful when you're subclassing an existing model (perhaps something from another application entirely) and want each model to have its own database table. Here - each model in the hierarchy is a model all by itself.
search
Multi-table inheritance
in_bulk(id_list)
DoesNotExist
45. This query deletes all Entry objects with a pub_date year of 2005.
iteration
clear() method
Q()
Entry.objects.filter(pub_date__year=2005).delete()
46. This model method saves a model instance to the database. This method has no return value.
distinct()
QuerySet
Entry.objects.filter(pub_date__range=(start_date - end_date))
save()
47. These methods are intended to do "table-wide" things.
evaluation
year
save()
Manager methods
48. Takes a list of primary-key values and returns a dictionary mapping each primary-key value to an instance of the object with the given ID.
DoesNotExist
defer(*fields)
related_name
in_bulk(id_list)
49. Lookup type that returns results with a case-insensitive start sequence.
filter(**kwargs)
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
__unicode__()
istartswith
50. This tells Django how to calculate the URL for an object. Django uses this in its admin interface - and any time it needs to figure out a URL for an object.
get_absolute_url()
~
many-to-one relationship
one-to-one relationship