Test your basic knowledge |

Django Queryset

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. 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.






2. A Python "magic method" that returns a unicode "representation" of any object.






3. 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.






4. Disjunction operator for Q objects.






5. If this option is True - the field is allowed to be blank. Default is False.






6. Lookup type that finds a case-sensitive regular expression match.






7. This is a criterion that narrow down a QuerySet based on given parameters.






8. 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






9. Lookup type that returns results with a case-insensitive end sequence.






10. Lookup type for date/datetime fields that finds an exact day match.






11. A Manager method that returns a new QuerySet containing objects that match the given lookup parameters.






12. Defined by a OneToOneField. You use it just like any other Field type: by including it as a class attribute of your model.






13. 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.






14. The database that will be used if this query is executed now






15. Can be used to remove all many-to-many relationships for an instance






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.






17. Each one of these is a Python class that subclasses django.db.models.Model. Each attribute of one of these represents a database field.






18. These are specified as keyword arguments to the QuerySet methods filter() - exclude() and get(). These take the form field__lookuptype=value .






19. 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.






20. 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.






21. Lookup type that takes either True or False and corresponds to SQL queries of IS NULL and IS NOT NULL - respectively.






22. If True - the table does not permit duplicate values for this field.






23. 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


24. 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.






25. True if the QuerySet has an order_by() clause or a default ordering on the model. False otherwise.






26. This represents a collection of objects from your database. It can have zero - one or many filters.






27. 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.






28. 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.






29. Exception raised by get(**kwargs) if no items match the query.






30. Lookup type that returns results that fall into an inclusive date range.






31. This query uses an F object to increment the pingback count for every entry in the blog.

Warning: Invalid argument supplied for foreach() in /var/www/html/basicversity.com/show_quiz.php on line 183


32. 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






33. 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






34. If True - this field is the primary key for the model.






35. 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






36. Exception raised by get(**kwargs) if more than one item matches the query.






37. Lookup type that tests for inclusion in a case-sensitive fashion.






38. 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






39. 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






40. Lookup type that returns results in a given list.






41. These add custom "row-level" functionality to your objects. These act on a particular model instance.






42. This field is added automatically - but this behavior can be overridden






43. 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.






44. 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)






45. (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.






46. 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.






47. If you are using this attribute on a ForeignKey or ManyToManyField - you must always specify a unique reverse name for the field.






48. Defined by a ManyToManyField. You use it just like any other Field type: by including it as a class attribute of your model.






49. When to run syncdb






50. Returns a new QuerySet that uses SELECT DISTINCT in its SQL query. This eliminates duplicate rows from the query results.