feat: The form node supports obtaining data from other nodes (#1924)
This commit is contained in:
parent
74edbd0a4e
commit
f111ae1200
@ -55,8 +55,10 @@ class BaseFormNode(IFormNode):
|
|||||||
"chat_record_id": self.flow_params_serializer.data.get("chat_record_id"),
|
"chat_record_id": self.flow_params_serializer.data.get("chat_record_id"),
|
||||||
"is_submit": self.context.get("is_submit", False)}
|
"is_submit": self.context.get("is_submit", False)}
|
||||||
form = f'<form_rander>{json.dumps(form_setting)}</form_rander>'
|
form = f'<form_rander>{json.dumps(form_setting)}</form_rander>'
|
||||||
|
context = self.workflow_manage.get_workflow_content()
|
||||||
|
form_content_format = self.workflow_manage.reset_prompt(form_content_format)
|
||||||
prompt_template = PromptTemplate.from_template(form_content_format, template_format='jinja2')
|
prompt_template = PromptTemplate.from_template(form_content_format, template_format='jinja2')
|
||||||
value = prompt_template.format(form=form)
|
value = prompt_template.format(form=form, context=context)
|
||||||
return NodeResult(
|
return NodeResult(
|
||||||
{'result': value, 'form_field_list': form_field_list, 'form_content_format': form_content_format}, {},
|
{'result': value, 'form_field_list': form_field_list, 'form_content_format': form_content_format}, {},
|
||||||
_write_context=write_context)
|
_write_context=write_context)
|
||||||
@ -69,8 +71,10 @@ class BaseFormNode(IFormNode):
|
|||||||
'form_data': self.context.get('form_data', {}),
|
'form_data': self.context.get('form_data', {}),
|
||||||
"is_submit": self.context.get("is_submit", False)}
|
"is_submit": self.context.get("is_submit", False)}
|
||||||
form = f'<form_rander>{json.dumps(form_setting)}</form_rander>'
|
form = f'<form_rander>{json.dumps(form_setting)}</form_rander>'
|
||||||
|
context = self.workflow_manage.get_workflow_content()
|
||||||
|
form_content_format = self.workflow_manage.reset_prompt(form_content_format)
|
||||||
prompt_template = PromptTemplate.from_template(form_content_format, template_format='jinja2')
|
prompt_template = PromptTemplate.from_template(form_content_format, template_format='jinja2')
|
||||||
value = prompt_template.format(form=form)
|
value = prompt_template.format(form=form, context=context)
|
||||||
return [Answer(value, self.view_type, self.runtime_node_id, self.workflow_params['chat_record_id'], None)]
|
return [Answer(value, self.view_type, self.runtime_node_id, self.workflow_params['chat_record_id'], None)]
|
||||||
|
|
||||||
def get_details(self, index: int, **kwargs):
|
def get_details(self, index: int, **kwargs):
|
||||||
@ -81,8 +85,10 @@ class BaseFormNode(IFormNode):
|
|||||||
'form_data': self.context.get('form_data', {}),
|
'form_data': self.context.get('form_data', {}),
|
||||||
"is_submit": self.context.get("is_submit", False)}
|
"is_submit": self.context.get("is_submit", False)}
|
||||||
form = f'<form_rander>{json.dumps(form_setting)}</form_rander>'
|
form = f'<form_rander>{json.dumps(form_setting)}</form_rander>'
|
||||||
|
context = self.workflow_manage.get_workflow_content()
|
||||||
|
form_content_format = self.workflow_manage.reset_prompt(form_content_format)
|
||||||
prompt_template = PromptTemplate.from_template(form_content_format, template_format='jinja2')
|
prompt_template = PromptTemplate.from_template(form_content_format, template_format='jinja2')
|
||||||
value = prompt_template.format(form=form)
|
value = prompt_template.format(form=form, context=context)
|
||||||
return {
|
return {
|
||||||
'name': self.node.properties.get('stepName'),
|
'name': self.node.properties.get('stepName'),
|
||||||
"index": index,
|
"index": index,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user