Преглед изворни кода

fix: update iteration node to use correct variable segment types (#25315)

tags/2.0.0-beta.2^2
-LAN- пре 1 месец
родитељ
комит
7e629fd783
No account linked to committer's email address
1 измењених фајлова са 3 додато и 3 уклоњено
  1. 3
    3
      api/core/workflow/nodes/iteration/iteration_node.py

+ 3
- 3
api/core/workflow/nodes/iteration/iteration_node.py Прегледај датотеку

@@ -11,7 +11,7 @@ from typing import TYPE_CHECKING, Any, Optional, cast
from flask import Flask, current_app

from configs import dify_config
from core.variables import ArrayVariable, IntegerVariable, NoneVariable
from core.variables import IntegerVariable, NoneSegment
from core.variables.segments import ArrayAnySegment, ArraySegment
from core.workflow.entities.node_entities import (
NodeRunResult,
@@ -112,10 +112,10 @@ class IterationNode(BaseNode):
if not variable:
raise IteratorVariableNotFoundError(f"iterator variable {self._node_data.iterator_selector} not found")

if not isinstance(variable, ArrayVariable) and not isinstance(variable, NoneVariable):
if not isinstance(variable, ArraySegment) and not isinstance(variable, NoneSegment):
raise InvalidIteratorValueError(f"invalid iterator value: {variable}, please provide a list.")

if isinstance(variable, NoneVariable) or len(variable.value) == 0:
if isinstance(variable, NoneSegment) or len(variable.value) == 0:
# Try our best to preserve the type informat.
if isinstance(variable, ArraySegment):
output = variable.model_copy(update={"value": []})

Loading…
Откажи
Сачувај