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. These add custom "row-level" functionality to your objects. These act on a particular model instance.
ordered
only(*fields)
Custom model methods
help_text
2. 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.
Custom model methods
iregex
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
Many-to-many relationship through an intermediate model
3. 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.
month
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
class type
Multi-table inheritance
4. This query finds all entries with an id greater than 4.
primary_key
Restrictions on field names
lte
Entry.objects.filter(id__gt=4)
5. 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
6. Lookup type that returns results that fall into an inclusive date range.
iterator()
range
__unicode__()
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
7. a QuerySet can be sliced - using Python's array-slicing syntax.
Q(question__istartswith='What')
slicing
intermediate models
edit your settings file and change the INSTALLED_APPS setting to add the name of the module that contains your models.py.
8. 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.
|
Proxy model
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
exists()
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.
null
istartswith
Manager methods
delete()
10. Returns a new QuerySet that uses SELECT DISTINCT in its SQL query. This eliminates duplicate rows from the query results.
distinct()
MultipleObjectsReturned
choices
Q(question__istartswith='What')
11. If this option is True - Django will store empty values as NULL in the database. Default is False.
when you add new apps to INSTALLED_APPS
null
reverse name
latest(field_name=None)
12. 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
distinct()
one-to-one relationship
delete()
class type
13. A manager method that returns a new QuerySet containing objects that do not match the given lookup parameters.
only(*fields)
filter chaining
exclude(**kwargs)
delete()
14. Lookup type that returns results with a case-insensitive end sequence.
lte
iendswith
year
startswith
15. Lookup type that tests for inclusion in a case-sensitive fashion.
contains
startswith
pickling
in
16. 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.
evaluation
regex
Restrictions on field names
pickling
17. A Python "magic method" that returns a unicode "representation" of any object.
primary_key
day
__unicode__()
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
18. If this option is True - the field is allowed to be blank. Default is False.
using(alias)
choices tuple
blank
in
19. 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.
count()
help_text
__unicode__()
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
20. 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.
MultipleObjectsReturned
Restrictions on field names
ManyToManyField
iteration
21. A convenience method for looking up an object with the given kwargs - creating one if necessary.
get_or_create(**kwargs)
through argument
F()
get(**kwargs)
22. Lookup type that yields an "exact" match. If you don't provide a lookup type -- that is - if your keyword argument doesn't contain a double underscore -- the lookup type is assumed to be of this sort.
all()
OneToOneField
exact
clear() method
23. A convenience method for constructing an object and saving it all in one step.
create(**kwargs)
pickling
related_name
many-to-many relationship
24. Lookup type for date/datetime fields that finds an exact month match. Takes an integer 1 (January) through 12
update()
using(alias)
month
Entry.objects.filter(id__gt=4)
25. Returns an integer representing the number of objects in the database matching the QuerySet. This never raises exceptions.
count()
filter
class attributes
get_or_create(**kwargs)
26. 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.
using(alias)
related_name
get_absolute_url()
gt
27. Exception raised by get(**kwargs) if more than one item matches the query.
MultipleObjectsReturned
ordered
unique
reverse name
28. Defined by a ManyToManyField. You use it just like any other Field type: by including it as a class attribute of your model.
Proxy model
many-to-many relationship
istartswith
iregex
29. 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
30. 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)
pk
Proxy model
get(**kwargs)
31. These methods are intended to do "table-wide" things.
Entry.objects.filter(pub_date__year=2005).delete()
values(*fields)
when you add new apps to INSTALLED_APPS
Manager methods
32. 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
relationship spanning
all()
all()
primary_key
33. 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.
MultipleObjectsReturned
relationship spanning
unique
update()
34. If True - the table does not permit duplicate values for this field.
OneToOneField
blank
unique
distinct()
35. Lookup type that returns results with a case-insensitive start sequence.
all()
istartswith
db
many-to-one relationship
36. These are "anything that's not a field" - such as ordering options (ordering) - database table name (db_table) - or human-readable singular and plural names (verbose_name and verbose_name_plural)
Model metadata
primary_key
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
Meta class
37. Lookup type that returns results greater than or equal to a given value.
startswith
gte
defer(*fields)
filter(**kwargs)
38. 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
Meta class
F()
Manager methods
month
39. Manager method used to retrieve every object in a model.
all()
default
Q()
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
40. 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.all().update(n_pingbacks=F('n_pingbacks') + 1)
none()
filter chaining
choices
41. Lookup type that returns results less than a given value.
exclude(**kwargs)
lt
choices tuple
Manager
42. When to run syncdb
default
when you add new apps to INSTALLED_APPS
Entry.objects.filter(id__in=[1 - 3 - 4])
latest(field_name=None)
43. This represents a collection of objects from your database. It can have zero - one or many filters.
iexact
update()
QuerySet
Meta class
44. This query updates all the headlines with pub_date in 2007 to read 'Everything is the same'.
Warning
: Invalid argument supplied for foreach() in
/var/www/html/basicversity.com/show_quiz.php
on line
183
45. Lookup type that finds a case-sensitive regular expression match.
ForeignKey
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
iteration
regex
46. 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
47. 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
get(**kwargs)
Model metadata
aggregate(args - *kwargs)
48. These are specified as keyword arguments to the QuerySet methods filter() - exclude() and get(). These take the form field__lookuptype=value .
exclude(**kwargs)
choices tuple
iendswith
Field lookups
49. 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
ForeignKey
only(*fields)
intermediate models
gt
50. 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.
count()
clear() method
using(alias)
aggregate(args - *kwargs)