在這個工作流程的步驟中,您將學習如何使用條件邏輯 (conditional logic) 過濾資料,以及如何在節點中使用運算式 (expressions),這些都是透過 If 節點來實現的。

若只想在 Airtable 中插入「處理中 (processing)」的訂單,我們需要依照 orderStatus 來篩選資料。基本上,我們想告訴程式:如果 orderStatus 是 processing,則將所有符合此狀態的紀錄插入 Airtable;否則(例如,orderStatus 不是 processing),就計算其他訂單狀態(booked)的所有訂單金額總和。

這類 if-then-else 指令就是所謂的條件邏輯。在 n8n 的工作流程中,我們可以用 If 節點來實作條件邏輯,透過比較運算來決定工作流程的分支。

<aside> 🚀

If vs. Switch

如果您需要依據多於兩條可能的條件路徑(If 節點只有 true 與 false 兩個分支)來過濾資料,可以使用 Switch 節點。Switch 節點與 If 節點相似,但支援多個輸出路徑。

</aside>

Remove the connection to the Airtable node

首先,先移除 HTTP Request 節點與 Airtable 節點之間的連線:

  1. 將滑鼠游標移到 HTTP Request 節點與 Airtable 節點之間的連線箭頭上。
  2. 選擇垃圾桶圖示以刪除該連線。

Configure the If node

移除 Airtable 節點連線後,新增一個 If 節點並連接到 HTTP Request 節點:

  1. 點選 HTTP Request 節點旁的 + 號。
  2. 搜尋 If 節點。
  3. 在搜尋結果中選擇 If,將它加入畫布上。

對於 If 節點,我們將使用表達式。

<aside> 🚀

Expressions

運算式 (expression) 指的是在程式語言中,由字元與符號組成、並可依據輸入值而得到結果的字串。在 n8n 的工作流程中,您可以在節點裡使用運算式引用其他節點輸出的資料。在本例中,If 節點會引用 HTTP Request 節點的輸出資料。

</aside>

在 If 節點視窗中,進行以下參數設定:

<aside> 🚀

Data Type:

請確保依照您所選的運算,正確設定資料型別 (boolean、date & time、number、string)。

</aside>