Actually django db does throw the same ValueError, I could do:
```python
  def get_object(self, queryset=None):
        try:
            return super(XFormViewSet, self).get_object(queryset)
        except ValueError:
            owner, pk = self.lookup_fields
            self.lookup_fields = ('owner', 'id_string')
            self.kwargs['id_string'] = self.kwargs[pk]
        return super(XFormViewSet, self).get_object(queryset)
```