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. Lookup type that returns results that fall into an inclusive date range.
range
day
Q(question__istartswith='What')
__unicode__()
2. The first element in this iterable is the value that will be stored in the database - the second element will be displayed by the admin interface - or in a ModelChoiceField.
Abstract base class
choices tuple
all()
Q()
3. Returns the object matching the given lookup parameters
get(**kwargs)
~
Abstract base class
reverse name
4. 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
primary_key
add()
range
exists()
5. Used to get a QuerySet for a model. This is called 'objects' by default.
Manager
using(alias)
aggregate(args - *kwargs)
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
6. Defined by django.db.models.ForeignKey. You use it just like any other Field type: by including it as a class attribute of your model.
Model metadata
~
many-to-one relationship
search
7. The database that will be used if this query is executed now
db
values_list(*fields)
class attributes
startswith
8. This object encapsulates a collection of keyword arguments - with the keys being field lookup types. These objects can be combined using the & and | operators - as well as negated with the ~ operator.
db
choices
pickling
Q()
9. This query finds all entries with an id in the list [1 - 3 - 4]
Entry.objects.filter(id__in=[1 - 3 - 4])
iteration
Custom model methods
many-to-one relationship
10. Returns a ValuesQuerySet -- a QuerySet that returns dictionaries when used as an iterable - rather than model-instance objects.
values(*fields)
default
all()
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
11. This model method saves a model instance to the database. This method has no return value.
save()
class attributes
istartswith
none()
12. Manager method used to retrieve every object in a model.
iendswith
QuerySet
year
all()
13. A Q object that asks for entries with a question value that start with 'Who' or do not have a publication date of 2005.
14. Lookup type that returns results less than or equal to a given value.
values(*fields)
many-to-many relationship
lte
latest(field_name=None)
15. Lookup type that takes either True or False and corresponds to SQL queries of IS NULL and IS NOT NULL - respectively.
isnull
week_day
iendswith
blank
16. 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.
id field
F()
gt
help_text
17. These are specified as keyword arguments to the QuerySet methods filter() - exclude() and get(). These take the form field__lookuptype=value .
one-to-one relationship
Restrictions on field names
pickling
Field lookups
18. restrictions on ________: (1) Your intermediate model must contain one - and only one - foreign key to the target model. (2) Your intermediate model must contain one - and only one - foreign key to the source model. (3) When defining a many-to-many r
intermediate models
Q(question__istartswith='What')
class type
class attributes
19. (1) These cannot be Python reserved words - because that would result in a Python syntax error. (2) These cannot contain more than one underscore in a row - due to the way Django's query lookup syntax works.
update(**kwargs)
Restrictions on field names
when you add new apps to INSTALLED_APPS
DoesNotExist
20. Returns a dictionary of aggregate values (averages - sums - etc) calculated over the QuerySet. Each argument to this method specifies a value that will be included in the dictionary that is returned.
Many-to-many relationship through an intermediate model
Manager methods
aggregate(args - *kwargs)
when you add new apps to INSTALLED_APPS
21. Returns a QuerySet that will automatically "follow" foreign-key relationships - selecting that additional related-object data when it executes its query. This is a performance booster which results in (sometimes much) larger queries but means later u
Q(question__istartswith='What')
isnull
year
select_related()
22. Evaluation happens upon use the "step" parameter of slice syntax - the first time you iterate over it - when pickling or caching results - upon calling repr() - upon calling len() - upon calling list() - upon calling bool()
lte
null
evaluation
Multi-table inheritance
23. If True - the table does not permit duplicate values for this field.
unique
==
id field
get(**kwargs)
24. Lookup type that returns results with a case-insensitive start sequence.
istartswith
lt
Field lookups
pk
25. Lookup type that returns results with a case-sensitive start sequence.
startswith
slicing
~
istartswith
26. Evaluates the QuerySet (by performing the query) and returns an iterator over the results. A QuerySet typically caches its results internally so that repeated evaluations do not result in additional queries; this method will instead read results dire
iterator()
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
week_day
all()
27. Lookup type that finds a case-insensitive regular expression match.
in
iregex
iteration
save()
28. Lookup type that returns results with a case-insensitive end sequence.
week_day
iendswith
slicing
intermediate models
29. A convenience method for looking up an object with the given kwargs - creating one if necessary.
lte
F()
only(*fields)
get_or_create(**kwargs)
30. When to run syncdb
relationship spanning
Q()
Entry.objects.filter(pub_date__year=2005).delete()
when you add new apps to INSTALLED_APPS
31. The value given in the absence of a specified value for the field. This can be a value or a callable object. If callable it will be called every time a new object is created.
Many-to-many relationship to self
__unicode__()
default
id field
32. This sets a field to a particular value for all the objects in a QuerySet. You can only set non-relation fields and ForeignKey fields using this method.
choices
Q(question__istartswith='What')
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
update()
33. This gives your model metadata.
filter(**kwargs)
ForeignKey
Meta class
&
34. Fields are specified by these
exclude(**kwargs)
class attributes
ManyToManyField
Entry.objects.filter(pub_date__range=(start_date - end_date))
35. A convenience method for constructing an object and saving it all in one step.
filter(**kwargs)
relationship spanning
values(*fields)
create(**kwargs)
36. Specifies the model that will be used to govern the many-to-many relationship. You can then put extra fields on the intermediate model. The intermediate model is associated with the ManyToManyField using this to point to the model that will act as an
distinct()
through argument
ManyToManyField
iendswith
37. 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.
select_related()
update(**kwargs)
istartswith
Multi-table inheritance
38. 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
update()
Proxy model
many-to-one relationship
gte
39. Returns an integer representing the number of objects in the database matching the QuerySet. This never raises exceptions.
count()
range
filter chaining
null
40. Lookup type for date/datetime fields that finds an exact year match. Takes a four-digit year.
Multi-table inheritance
update()
year
Manager
41. This field is added automatically - but this behavior can be overridden
id field
__unicode__()
Q()
pk
42. a QuerySet can be sliced - using Python's array-slicing syntax.
pickling
month
search
slicing
43. If this option is True - Django will store empty values as NULL in the database. Default is False.
all()
null
values(*fields)
choices tuple
44. A Manager method that returns a new QuerySet containing objects that match the given lookup parameters.
Custom model methods
filter(**kwargs)
iexact
one-to-one relationship
45. Conjuntion operator for Q objects.
null
&
~
Many-to-many relationship through an intermediate model
46. This is a criterion that narrow down a QuerySet based on given parameters.
update(**kwargs)
slicing
filter
many-to-many relationship
47. A manager method that returns a new QuerySet containing objects that do not match the given lookup parameters.
many-to-one relationship
exclude(**kwargs)
latest(field_name=None)
DoesNotExist
48. 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.
49. This object allows you to compare the value of a model field with another field on the same model. Django supports the use of addition - subtraction - multiplication - division and modulo arithmetic with these objects - both with constants and with o
in_bulk(id_list)
many-to-many relationship
F()
ForeignKey
50. Can be used to remove all many-to-many relationships for an instance
help_text
clear() method
iterator()
choices