Sure, but `delete` has no return value, so assignment from an exception is necessary to provide an appropriate error message.

    CollectionMembership.objects.get(collection=self, app=app) == self.collectionmembership_set.filter(app=app)

I agree that `self.collectionmembership_set.filter(app=app)` is more expressive, though. a3104d0