def create(cls, substance): def _validate(substance): if not substance: return False return True if not _validate(substance): raise IllegalRequestError(None) author_id = substance.get("author_id") author_key = Author.get_key_by_id(author_id) category_id = substance.get("category_id") category_key = Category.get_key_by_id(category_id) kit = Kit( id=Kit.make_kit_id_hash(), kit_name=substance.get("kit_name"), author=author_key, category=category_key, tags=Kit.sanitize_tags(substance.get("tags")), description=substance.get("description"), ) if substance.get("kit_file"): kit.kit_file_id = KitLogic._store_to_blobstore(substance.get("kit_file")) kit.put() return True