fix: Fix some knowledge base import errors (#2739)
This commit is contained in:
parent
4fa3fec103
commit
a07df46f9d
@ -40,6 +40,14 @@ def zip_dir(zip_path, output=None):
|
|||||||
zip.close()
|
zip.close()
|
||||||
|
|
||||||
|
|
||||||
|
def is_valid_uuid(s):
|
||||||
|
try:
|
||||||
|
uuid.UUID(s)
|
||||||
|
return True
|
||||||
|
except ValueError:
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
def write_image(zip_path: str, image_list: List[str]):
|
def write_image(zip_path: str, image_list: List[str]):
|
||||||
for image in image_list:
|
for image in image_list:
|
||||||
search = re.search("\(.*\)", image)
|
search = re.search("\(.*\)", image)
|
||||||
@ -47,6 +55,9 @@ def write_image(zip_path: str, image_list: List[str]):
|
|||||||
text = search.group()
|
text = search.group()
|
||||||
if text.startswith('(/api/file/'):
|
if text.startswith('(/api/file/'):
|
||||||
r = text.replace('(/api/file/', '').replace(')', '')
|
r = text.replace('(/api/file/', '').replace(')', '')
|
||||||
|
r = r.strip().split(" ")[0]
|
||||||
|
if not is_valid_uuid(r):
|
||||||
|
break
|
||||||
file = QuerySet(File).filter(id=r).first()
|
file = QuerySet(File).filter(id=r).first()
|
||||||
if file is None:
|
if file is None:
|
||||||
break
|
break
|
||||||
@ -58,6 +69,9 @@ def write_image(zip_path: str, image_list: List[str]):
|
|||||||
f.write(file.get_byte())
|
f.write(file.get_byte())
|
||||||
else:
|
else:
|
||||||
r = text.replace('(/api/image/', '').replace(')', '')
|
r = text.replace('(/api/image/', '').replace(')', '')
|
||||||
|
r = r.strip().split(" ")[0]
|
||||||
|
if not is_valid_uuid(r):
|
||||||
|
break
|
||||||
image_model = QuerySet(Image).filter(id=r).first()
|
image_model = QuerySet(Image).filter(id=r).first()
|
||||||
if image_model is None:
|
if image_model is None:
|
||||||
break
|
break
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user