Comparing objects
To compare two model instances, just use the standard Python comparison operator, the double equals sign: ==
. Behind the scenes, that compares the primary key values of two models.
Using the Entry
example above, the following two statements are equivalent:
>>> some_entry == other_entry >>> some_entry.id == other_entry.id
If a model's primary key isn't called id
, no problem. Comparisons will always use the primary key, whatever it's called. For example, if a model's primary key field is called name
, these two statements are equivalent:
>>> some_obj == other_obj >>> some_obj.name == other_obj.name
Get Mastering Django: Core now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.