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. A QuerySet is iterable - and it executes its database query the first time you iterate over it.
iteration
year
ManyToManyField
isnull
2. If True - the table does not permit duplicate values for this field.
delete()
unique
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
related_name
3. Lookup type that finds a case-insensitive regular expression match.
delete()
iregex
in
filter(**kwargs)
4. 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.
Abstract base class
many-to-one relationship
ForeignKey
get_absolute_url()
5. 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.
Restrictions on field names
get_absolute_url()
pickling
exclude(**kwargs)
6. 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.
~
help_text
startswith
Proxy model
7. 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.
choices
Model metadata
create(**kwargs)
when you add new apps to INSTALLED_APPS
8. The database that will be used if this query is executed now
db
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
clear() method
Q()
9. Lookup type that returns results that fall into an inclusive date range.
reverse()
range
annotate(args - *kwargs)
dates(field - kind - order='ASC')
10. Lookup type that finds a case-sensitive regular expression match.
Multi-table inheritance
get(**kwargs)
order_by(*fields)
regex
11. 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()
only(*fields)
evaluation
id field
distinct()
12. Returns a new QuerySet containing objects that match the given lookup parameters.
intermediate models
model
filter(**kwargs)
in_bulk(id_list)
13. A convenience method for constructing an object and saving it all in one step.
values_list(*fields)
help_text
ordered
create(**kwargs)
14. This query deletes all Entry objects with a pub_date year of 2005.
year
distinct()
Entry.objects.filter(pub_date__year=2005).delete()
exists()
15. Lookup type that returns results greater than a given value.
all()
defer(*fields)
gt
related_name
16. 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
Entry.objects.filter(pub_date__year=2005).delete()
Entry.objects.filter(id__in=[1 - 3 - 4])
Manager methods
update(**kwargs)
17. A convenience method for looking up an object with the given kwargs - creating one if necessary.
Custom model methods
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
get_or_create(**kwargs)
18. 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.
defer(*fields)
null
Multi-table inheritance
Many-to-many relationship through an intermediate model
19. Lookup type for date/datetime fields that finds an exact day match.
filter
==
class type
day
20. This represents a collection of objects from your database. It can have zero - one or many filters.
unique
__unicode__()
iregex
QuerySet
21. Lookup type for date/datetime fields that finds an exact year match. Takes a four-digit year.
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
Restrictions on field names
year
filter(**kwargs)
22. Fields are specified by these
all()
class attributes
intermediate models
|
23. A Q object that asks for entries with a question value that start with 'Who' or do not have a publication date of 2005.
Warning
: Invalid argument supplied for foreach() in
/var/www/html/basicversity.com/show_quiz.php
on line
183
24. 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.
defer(*fields)
Q(question__istartswith='What')
many-to-one relationship
Field lookups
25. Adds to each object in the QuerySet with the provided list of aggregate values (averages - sums - etc) that have been computed over the objects that are related to the objects in the QuerySet. Each argument to this is content that will be added to ea
all()
iregex
contains
annotate(args - *kwargs)
26. Returns a ValuesQuerySet -- a QuerySet that returns dictionaries when used as an iterable - rather than model-instance objects.
all()
filter chaining
values(*fields)
Restrictions on field names
27. 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.
many-to-one relationship
update()
iteration
Q()
28. This query finds all entries with an id greater than 4.
class type
through argument
Entry.objects.filter(id__gt=4)
null
29. 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
DoesNotExist
Entry.objects.filter(id__in=[1 - 3 - 4])
many-to-one relationship
none()
30. Defines a many-to-many relationship. You use it just like any other Field type: by including it as a class attribute of your model.
iregex
ManyToManyField
related_name
update(**kwargs)
31. The default for this is the name of the child class followed by '_set'.
through argument
iterator()
reverse name
Q()
32. Lookup type that returns results in a given list.
in
get(**kwargs)
week_day
Q()
33. Exception raised by get(**kwargs) if no items match the query.
DoesNotExist
Q()
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
Restrictions on field names
34. 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.
iexact
OneToOneField
filter(**kwargs)
select_related()
35. These add custom "row-level" functionality to your objects. These act on a particular model instance.
week_day
__unicode__()
startswith
Custom model methods
36. These are specified as keyword arguments to the QuerySet methods filter() - exclude() and get(). These take the form field__lookuptype=value .
latest(field_name=None)
==
DoesNotExist
Field lookups
37. 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.
Many-to-many relationship to self
Meta class
only(*fields)
count()
38. Manager method used to retrieve every object in a model.
Entry.objects.filter(pub_date__range=(start_date - end_date))
clear() method
one-to-one relationship
all()
39. Lookup type for date/datetime fields that finds an exact month match. Takes an integer 1 (January) through 12
month
Meta class
class type
get(**kwargs)
40. Lookup type that takes either True or False and corresponds to SQL queries of IS NULL and IS NOT NULL - respectively.
exact
Manager
~
isnull
41. True if the QuerySet has an order_by() clause or a default ordering on the model. False otherwise.
many-to-one relationship
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
unique
ordered
42. Exception raised by get(**kwargs) if more than one item matches the query.
values(*fields)
primary_key
MultipleObjectsReturned
all()
43. Lookup type that returns results less than a given value.
Q(question__istartswith='What')
in
lt
Manager methods
44. Lookup type that returns results with a case-sensitive start sequence.
save()
__unicode__()
week_day
startswith
45. 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.
gt
choices tuple
add()
exists()
46. 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.
latest(field_name=None)
Multi-table inheritance
reverse()
Many-to-many relationship to self
47. When to run syncdb
gte
Entry.objects.filter(id__gt=4)
when you add new apps to INSTALLED_APPS
default
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
iendswith
Abstract base class
aggregate(args - *kwargs)
count()
49. 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.
search
filter(**kwargs)
OneToOneField
choices tuple
50. This method immediately deletes the object and has no return value.
Many-to-many relationship to self
using(alias)
delete()
|