[fix] #21678 User input of remote file link on the run page form causes conversation/message interface error (#21683)
Co-authored-by: 李强04 <liqiang04@gaotu.cn>
This commit is contained in:
@@ -676,7 +676,7 @@ class Conversation(Base):
|
|||||||
if isinstance(value, dict) and value.get("dify_model_identity") == FILE_MODEL_IDENTITY:
|
if isinstance(value, dict) and value.get("dify_model_identity") == FILE_MODEL_IDENTITY:
|
||||||
if value["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
if value["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
||||||
value["tool_file_id"] = value["related_id"]
|
value["tool_file_id"] = value["related_id"]
|
||||||
elif value["transfer_method"] == FileTransferMethod.LOCAL_FILE:
|
elif value["transfer_method"] in [FileTransferMethod.LOCAL_FILE, FileTransferMethod.REMOTE_URL]:
|
||||||
value["upload_file_id"] = value["related_id"]
|
value["upload_file_id"] = value["related_id"]
|
||||||
inputs[key] = file_factory.build_from_mapping(mapping=value, tenant_id=value["tenant_id"])
|
inputs[key] = file_factory.build_from_mapping(mapping=value, tenant_id=value["tenant_id"])
|
||||||
elif isinstance(value, list) and all(
|
elif isinstance(value, list) and all(
|
||||||
@@ -686,7 +686,7 @@ class Conversation(Base):
|
|||||||
for item in value:
|
for item in value:
|
||||||
if item["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
if item["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
||||||
item["tool_file_id"] = item["related_id"]
|
item["tool_file_id"] = item["related_id"]
|
||||||
elif item["transfer_method"] == FileTransferMethod.LOCAL_FILE:
|
elif item["transfer_method"] in [FileTransferMethod.LOCAL_FILE, FileTransferMethod.REMOTE_URL]:
|
||||||
item["upload_file_id"] = item["related_id"]
|
item["upload_file_id"] = item["related_id"]
|
||||||
inputs[key].append(file_factory.build_from_mapping(mapping=item, tenant_id=item["tenant_id"]))
|
inputs[key].append(file_factory.build_from_mapping(mapping=item, tenant_id=item["tenant_id"]))
|
||||||
|
|
||||||
@@ -946,7 +946,7 @@ class Message(Base):
|
|||||||
if isinstance(value, dict) and value.get("dify_model_identity") == FILE_MODEL_IDENTITY:
|
if isinstance(value, dict) and value.get("dify_model_identity") == FILE_MODEL_IDENTITY:
|
||||||
if value["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
if value["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
||||||
value["tool_file_id"] = value["related_id"]
|
value["tool_file_id"] = value["related_id"]
|
||||||
elif value["transfer_method"] == FileTransferMethod.LOCAL_FILE:
|
elif value["transfer_method"] in [FileTransferMethod.LOCAL_FILE, FileTransferMethod.REMOTE_URL]:
|
||||||
value["upload_file_id"] = value["related_id"]
|
value["upload_file_id"] = value["related_id"]
|
||||||
inputs[key] = file_factory.build_from_mapping(mapping=value, tenant_id=value["tenant_id"])
|
inputs[key] = file_factory.build_from_mapping(mapping=value, tenant_id=value["tenant_id"])
|
||||||
elif isinstance(value, list) and all(
|
elif isinstance(value, list) and all(
|
||||||
@@ -956,7 +956,7 @@ class Message(Base):
|
|||||||
for item in value:
|
for item in value:
|
||||||
if item["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
if item["transfer_method"] == FileTransferMethod.TOOL_FILE:
|
||||||
item["tool_file_id"] = item["related_id"]
|
item["tool_file_id"] = item["related_id"]
|
||||||
elif item["transfer_method"] == FileTransferMethod.LOCAL_FILE:
|
elif item["transfer_method"] in [FileTransferMethod.LOCAL_FILE, FileTransferMethod.REMOTE_URL]:
|
||||||
item["upload_file_id"] = item["related_id"]
|
item["upload_file_id"] = item["related_id"]
|
||||||
inputs[key].append(file_factory.build_from_mapping(mapping=item, tenant_id=item["tenant_id"]))
|
inputs[key].append(file_factory.build_from_mapping(mapping=item, tenant_id=item["tenant_id"]))
|
||||||
return inputs
|
return inputs
|
||||||
|
Reference in New Issue
Block a user