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. 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
none()
Entry.objects.filter(id__in=[1 - 3 - 4])
ManyToManyField
defer(*fields)
2. 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.
Entry.objects.filter(id__in=[1 - 3 - 4])
QuerySet
choices
reverse name
3. A manager method that returns a new QuerySet containing objects that do not match the given lookup parameters.
gt
relationship spanning
Q(question__istartswith='What')
exclude(**kwargs)
4. 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-one relationship
default
==
Many-to-many relationship to self
5. A convenience method for constructing an object and saving it all in one step.
many-to-many relationship
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
create(**kwargs)
Manager methods
6. A Python "magic method" that returns a unicode "representation" of any object.
__unicode__()
class type
isnull
blank
7. Lookup type that returns results with a case-sensitive end sequence.
choices tuple
Entry.objects.filter(id__in=[1 - 3 - 4])
endswith
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
8. 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
9. 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.
defer(*fields)
lte
reverse()
isnull
10. These are specified as keyword arguments to the QuerySet methods filter() - exclude() and get(). These take the form field__lookuptype=value .
Abstract base class
Field lookups
intermediate models
class type
11. A manager method which returns a single object. If there are no results that match the query - this method will raise a DoesNotExist exception. If more than one item matches this query - the method will raise MultipleObjectsReturned.
day
get_or_create(**kwargs)
get(**kwargs)
pickling
12. Lookup type that finds a case-sensitive regular expression match.
blank
regex
Multi-table inheritance
Abstract base class
13. Lookup type that returns results less than or equal to a given value.
Entry.objects.filter(id__gt=4)
lte
class type
ManyToManyField
14. 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.
delete()
slicing
aggregate(args - *kwargs)
select_related()
15. 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.
month
slicing
Many-to-many relationship through an intermediate model
filter
16. 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
evaluation
intermediate models
iendswith
filter chaining
17. 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.
Multi-table inheritance
filter
all()
annotate(args - *kwargs)
18. These methods are intended to do "table-wide" things.
Manager
in_bulk(id_list)
Manager methods
pickling
19. This method immediately deletes the object and has no return value.
Q(question__istartswith='What')
in_bulk(id_list)
week_day
delete()
20. 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
filter chaining
help_text
relationship spanning
exact
21. This model method is used for updating a ManyToManyField.
get(**kwargs)
add()
lt
help_text
22. 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
exact
F()
model
Multi-table inheritance
23. 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.
help_text
pickling
Entry.objects.filter(pub_date__year=2007).update(headline='Everything is the same')
none()
24. 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
Q(question__startswith='Who') | ~Q(pub_date__year=2005)
Manager methods
lte
25. 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.
Proxy model
in_bulk(id_list)
Many-to-many relationship through an intermediate model
primary_key
26. This query deletes all Entry objects with a pub_date year of 2005.
range
Custom model methods
lt
Entry.objects.filter(pub_date__year=2005).delete()
27. 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.
add()
using(alias)
ForeignKey
exclude(**kwargs)
28. 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
when you add new apps to INSTALLED_APPS
Multi-table inheritance
get_or_create(**kwargs)
annotate(args - *kwargs)
29. Exception raised by get(**kwargs) if more than one item matches the query.
MultipleObjectsReturned
related_name
Restrictions on field names
endswith
30. When to run syncdb
when you add new apps to INSTALLED_APPS
all()
QuerySet
Entry.objects.filter(id__gt=4)
31. a QuerySet can be sliced - using Python's array-slicing syntax.
exact
null
slicing
iexact
32. Lookup type for date/datetime fields that finds a 'day of the week' match.
startswith
week_day
aggregate(args - *kwargs)
DoesNotExist
33. 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.
lt
Many-to-many relationship to self
Model metadata
when you add new apps to INSTALLED_APPS
34. A convenience method for looking up an object with the given kwargs - creating one if necessary.
F()
get_or_create(**kwargs)
exact
many-to-many relationship
35. Lookup type that returns results with a case-sensitive start sequence.
help_text
get_absolute_url()
primary_key
startswith
36. Defined by a ManyToManyField. You use it just like any other Field type: by including it as a class attribute of your model.
get(**kwargs)
values(*fields)
delete()
many-to-many relationship
37. Lookup type that returns results less than a given value.
istartswith
iexact
lt
Q()
38. Lookup type that returns results with a case-insensitive start sequence.
choices tuple
istartswith
filter
db
39. Fields are specified by these
exclude(**kwargs)
contains
choices tuple
class attributes
40. If you are using this attribute on a ForeignKey or ManyToManyField - you must always specify a unique reverse name for the field.
choices
add()
related_name
evaluation
41. This model method saves a model instance to the database. This method has no return value.
__unicode__()
save()
relationship spanning
primary_key
42. 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
select_related()
|
in_bulk(id_list)
update()
43. Disjunction operator for Q objects.
many-to-many relationship
|
Entry.objects.all().update(n_pingbacks=F('n_pingbacks') + 1)
OneToOneField
44. 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
45. Lookup type that yields a case-insensitive match.
Model metadata
class type
endswith
iexact
46. 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.
in_bulk(id_list)
filter chaining
Entry.objects.filter(pub_date__range=(start_date - end_date))
startswith
47. Returns an integer representing the number of objects in the database matching the QuerySet. This never raises exceptions.
count()
exclude(**kwargs)
Field lookups
F()
48. 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.
values_list(*fields)
id field
extra(select=None - where=None - params=None - tables=None - order_by=None - select_params=None)
count()
49. This gives your model metadata.
ForeignKey
Meta class
Proxy model
|
50. Returns a new QuerySet containing objects that match the given lookup parameters.
Q(question__istartswith='What')
class type
filter(**kwargs)
&