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. To activate your models
Custom model methods
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
order_by(*fields)
iexact
2. 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
only(*fields)
ManyToManyField
istartswith
default
3. Lookup type that returns results with a case-insensitive start sequence.
Manager
values_list(*fields)
istartswith
delete()
4. Can be used to remove all many-to-many relationships for an instance
clear() method
iregex
slicing
filter(**kwargs)
5. A convenience method for constructing an object and saving it all in one step.
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
all()
create(**kwargs)
dates(field - kind - order='ASC')
6. A convenience method for looking up an object with the given kwargs - creating one if necessary.
select_related()
filter
|
get_or_create(**kwargs)
7. True if the QuerySet has an order_by() clause or a default ordering on the model. False otherwise.
istartswith
choices tuple
ordered
iregex
8. 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.
choices tuple
range
Manager
slicing
9. 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.
aggregate(args - *kwargs)
id field
get(**kwargs)
get(**kwargs)
10. 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.
pickling
MultipleObjectsReturned
Entry.objects.filter(pub_date__range=(start_date - end_date))
Many-to-many relationship to self
11. Returns an EmptyQuerySet -- a QuerySet that always evaluates to an empty list. This can be used in cases where you know that you should return an empty result set and your caller is expecting a QuerySet object (instead of returning an empty list - fo
default
QuerySet
none()
DoesNotExist
12. 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
Entry.objects.filter(id__in=[1 - 3 - 4])
istartswith
iexact
F()
13. Disjunction operator for Q objects.
dates(field - kind - order='ASC')
F()
|
distinct()
14. 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
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
Proxy model
values(*fields)
annotate(args - *kwargs)
15. This query finds all entries with an id in the list [1 - 3 - 4]
count()
Entry.objects.filter(id__in=[1 - 3 - 4])
filter(**kwargs)
Multi-table inheritance
16. If this option is True - Django will store empty values as NULL in the database. Default is False.
null
count()
Entry.objects.filter(id__in=[1 - 3 - 4])
only(*fields)
17. Returns an integer representing the number of objects in the database matching the QuerySet. This never raises exceptions.
relationship spanning
update(**kwargs)
__unicode__()
count()
18. Performs an SQL update query for the specified fields - and returns the number of rows affected. This method is applied instantly and the only restriction on the QuerySet that is updated is that it can only update columns in the model's main table. F
startswith
update(**kwargs)
when you add new apps to INSTALLED_APPS
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
19. Negation operator for Q objects.
iterator()
~
search
Custom model methods
20. Lookup type for date/datetime fields that finds an exact year match. Takes a four-digit year.
year
get_or_create(**kwargs)
annotate(args - *kwargs)
ManyToManyField
21. These add custom "row-level" functionality to your objects. These act on a particular model instance.
Custom model methods
pk
filter(**kwargs)
~
22. 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
gte
update(**kwargs)
one-to-one relationship
iterator()
23. 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.
Entry.objects.filter(pub_date__range=(start_date - end_date))
exclude(**kwargs)
order_by(*fields)
reverse()
24. 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
through argument
lt
QuerySet
many-to-one relationship
25. 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.
Meta class
null
delete()
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
26. Lookup type that takes either True or False and corresponds to SQL queries of IS NULL and IS NOT NULL - respectively.
order_by(*fields)
isnull
Entry.objects.filter(pub_date__year=2005).delete()
~
27. This is a criterion that narrow down a QuerySet based on given parameters.
relationship spanning
filter
slicing
using(alias)
28. These are specified as keyword arguments to the QuerySet methods filter() - exclude() and get(). These take the form field__lookuptype=value .
Manager methods
lte
choices tuple
Field lookups
29. Lookup type that returns results greater than or equal to a given value.
gte
dates(field - kind - order='ASC')
year
iterator()
30. 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
QuerySet
relationship spanning
Q(question__istartswith='What')
in
31. Lookup type that returns results that fall into an inclusive date range.
class attributes
range
contains
exact
32. 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.
get(**kwargs)
in
id field
Many-to-many relationship through an intermediate model
33. Defines a many-to-one relationship. ou use it just like any other Field type: by including it as a class attribute of your model.
&
month
pk
ForeignKey
34. This method is for controlling which database the QuerySet will be evaluated against if you are using more than one database. The only argument this method takes is the alias of a database - as defined in DATABASES.
ordered
contains
exclude(**kwargs)
using(alias)
35. Lookup type that returns results with a case-sensitive start sequence.
startswith
get(**kwargs)
MultipleObjectsReturned
DoesNotExist
36. Lookup type that returns results less than or equal to a given value.
DoesNotExist
relationship spanning
lte
ordered
37. Defined by a OneToOneField. You use it just like any other Field type: by including it as a class attribute of your model.
one-to-one relationship
iteration
order_by(*fields)
Manager
38. Exception raised by get(**kwargs) if more than one item matches the query.
when you add new apps to INSTALLED_APPS
count()
iendswith
MultipleObjectsReturned
39. Returns the most recent object in the table - by date - using the field_name provided as the date field.
order_by(*fields)
month
latest(field_name=None)
Field lookups
40. 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.
Entry.objects.filter(pub_date__year=2005).delete()
get(**kwargs)
pickling
|
41. A manager method that returns a new QuerySet containing objects that do not match the given lookup parameters.
update()
exclude(**kwargs)
month
get_or_create(**kwargs)
42. An iterable (e.g. - a list or tuple) of 2-tuples to use as options for this field. If this is given - Django's admin will use a select box instead of the standard text field and will limit options to those given.
all()
regex
choices
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
43. 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.
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
Manager methods
default
year
44. what the field _______ determines: (1) The database column type (e.g. INTEGER - VARCHAR); (2) The widget to use in Django's admin interface - if you care to use it (e.g. <input type="text"> - <select>); (3) The minimal validation requirements - used
reverse name
class type
only(*fields)
through argument
45. Returns the object matching the given lookup parameters
get(**kwargs)
related_name
intermediate models
reverse()
46. This query finds all entries between a start date of start_date and an end date of end_date.
Entry.objects.filter(pub_date__range=(start_date - end_date))
evaluation
get_or_create(**kwargs)
create(**kwargs)
47. When to run syncdb
pickling
when you add new apps to INSTALLED_APPS
filter
ManyToManyField
48. 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
Custom model methods
Entry.objects.filter(id__in=[1 - 3 - 4])
Abstract base class
gt
49. If you are using this attribute on a ForeignKey or ManyToManyField - you must always specify a unique reverse name for the field.
null
related_name
gt
get_absolute_url()
50. Lookup type that returns results less than a given value.
lt
Custom model methods
exclude(**kwargs)
values_list(*fields)