def get_block_details(self, block_ids):
        """Get details of scheduling or processing block

        Args:
            block_ids (list): List of block IDs
        """
        # Convert input to list if needed
        if not hasattr(block_ids, "__iter__"):
            block_ids = [block_ids]

        for _id in block_ids:
            block_key = self._db.get_block(_id)[0]
            block_data = self._db.get_all_field_value(block_key)
            # NOTE(BM) unfortunately this doesn't quite work for keys where \
            # the value is a python type (list, dict etc) \
            # The following hack works for now but is probably not infallible
            for key in block_data:
                for char in ['[', '{']:
                    if char in block_data[key]:
                        block_data[key] = ast.literal_eval(
                            str(block_data[key]))
            yield block_data
def get_block_details ( self , block_ids ) : if not hasattr ( block_ids , "__iter__" ) : block_ids = [ block_ids ] for _id in block_ids : block_key = self . _db . get_block ( _id ) [ 0 ] block_data = self . _db . get_all_field_value ( block_key ) for key in block_data : for char in [ '[' , '{' ] : if char in block_data [ key ] : block_data [ key ] = ast . literal_eval ( str ( block_data [ key ] ) ) yield block_data
Get details of scheduling or processing block

        Args:
            block_ids (list): List of block IDs