def init_ci_types(num=1): attrs = init_attributes(num) ci_types = [] for i in range(num): ci_type = CIType.create(name=uuid.uuid4().hex[:8], alias=uuid.uuid4().hex[:8], unique_id=attrs[i].id) CITypeAttribute.create( type_id=ci_type.id, attr_id=attrs[i].id, ) ci_types.append(ci_type) return ci_types
def add(cls, type_id, attr_ids=None, **kwargs): """ add attributes to CIType :param type_id: :param attr_ids: list :param kwargs: :return: """ cls._check(type_id, attr_ids) for attr_id in attr_ids: existed = CITypeAttribute.get_by(type_id=type_id, attr_id=attr_id, first=True, to_dict=False) if existed is not None: continue current_app.logger.debug(attr_id) CITypeAttribute.create(type_id=type_id, attr_id=attr_id, **kwargs) CITypeAttributesCache.clean(type_id)