If a command is called for the main field, without dynamic part, an
        ImplementationError is raised: commands can only be applied on dynamic
        versions.
        On dynamic versions, if the command is a modifier, we add the version in
        the inventory.

def _call_command(self, name, *args, **kwargs):
        """
        If a command is called for the main field, without dynamic part, an
        ImplementationError is raised: commands can only be applied on dynamic
        versions.
        On dynamic versions, if the command is a modifier, we add the version in
        the inventory.
        """
        if self.dynamic_version_of is None:
            raise ImplementationError('The main version of a dynamic field cannot accept commands')
        try:
            result = super(DynamicFieldMixin, self)._call_command(name, *args, **kwargs)
        except:
            raise
        else:
            if name in self.available_modifiers and name not in ('delete', 'hdel'):
                self._inventory.sadd(self.dynamic_part)
            return result