Strapi v4 指南
本教學課程將示範如何將 Meilisearch 與 Strapi 整合,以建立基於搜尋的 Web 應用程式。首先,您將使用 Strapi 的快速入門指南建立餐廳集合,然後使用 Meilisearch 搜尋此集合。
先決條件
- Node.js:作用中的 LTS 或維護 LTS 版本,目前為 Node.js >=18.0.0 <=20.x.x
- npm >=6.0.0(隨 Node.js 安裝)
- 執行中的 Meilisearch 執行個體 (v >= 1.x)。如果您需要此部分的協助,可以參考安裝章節。
使用 Strapi 建立後端
設定專案
建立一個名為 my-app
的目錄,您將在此新增應用程式的後端和前端部分。使用 Strapi 在 my-app
內產生後端 API
npx create-strapi-app@latest back --quickstart
此命令會在名為 back
的新目錄中建立 Strapi 應用程式,並開啟管理儀表板。建立帳戶以存取它。
建立帳戶後,您應該會被重新導向至 Strapi 的管理儀表板。您將在此設定您的後端 API。
建立並管理您的內容
下一步是建立新的集合類型。集合就像您內容的藍圖—在此案例中,它將是餐廳的集合。稍後您將建立另一個名為「類別」的集合,以組織您的餐廳。
若要繼續操作,請完成 Strapi 快速入門指南中「B 部分:使用內容類型建立器建立您的資料結構」和「D 部分:使用內容管理員將內容新增至 Strapi Cloud 專案」中的步驟 2 到 5。這些將包括
- 建立集合類型
- 建立新條目
- 設定角色與權限
- 發佈內容
擴充您的資料庫
完成 Strapi 快速入門指南中的這些步驟後,兩個名為「餐廳」和「類別」的新集合應會出現在 內容管理員 > 集合類型
下。如果您按一下 餐廳
,您會看到只有一個。按一下儀表板右上角的 + 建立新條目
按鈕,新增更多。
依序新增下列三間餐廳。針對每間餐廳,您都需要按 儲存
,然後按 發佈
。
- 名稱:
The Butter Biscotte
- 描述:
全部都是奶油,沒有任何健康概念。
接下來,在頁面右下角新增 法式料理
類別。
-
名稱:
The Slimy Snail
-
描述:
美食由大蒜和奶油製成。
-
類別:
法式料理
-
名稱:
The Smell of Blue
-
描述:
藍紋起司不會過期,這是您的食用方式。搭配少許奶油和大量快樂。
-
類別:
法式料理
您的 Strapi 後端現在已啟動並執行。Strapi 會自動為您的餐廳集合建立 REST API。請參閱 Strapi 的文件,以取得所有可用的 API 端點。
現在,是時候連接 Strapi 和 Meilisearch 並開始搜尋了。
連接 Strapi 和 Meilisearch
若要將 Meilisearch 外掛程式新增至 Strapi,您需要先結束 Strapi 應用程式。前往執行 Strapi 的終端機視窗,並按下 Ctrl+C
以終止程序。
接下來,在外掛程式的 back
目錄中安裝。
npm install strapi-plugin-meilisearch
安裝完成後,您必須重新建置 Strapi 應用程式,才能在開發模式下再次啟動,因為這樣可以更輕鬆地進行設定。
npm run build
npm run develop
此時,您的 Strapi 應用程式應該會再次在預設位址上執行:https://127.0.0.1:1337/admin/。在您的瀏覽器中開啟它。您應該會看到管理員登入頁面。輸入您用來建立帳戶的憑證。
連線後,您應該會在螢幕左側看到新的 meilisearch
外掛程式。
在 meilisearch
外掛程式頁面的「設定」標籤中,新增您的 Meilisearch 憑證。
現在是時候將您的 Strapi 集合新增到 Meilisearch 了。在 meilisearch
外掛程式頁面的「集合」標籤中,您應該會看到 restaurant
和 category
內容類型。
透過點擊 restaurant
旁邊的核取方塊,該內容類型會自動在 Meilisearch 中建立索引。
當您在「集合」標籤中點擊 restaurant
的核取方塊時,會出現「已連結」字樣。這表示每次您在 restaurant 內容類型中新增、更新或刪除條目時,Meilisearch 都會自動更新。
索引完成後,您的餐廳就會出現在 Meilisearch 中。存取搜尋預覽,透過搜尋「butter」來確認一切正常運作。
您的 Strapi 條目會依原樣傳送到 Meilisearch。您可以在將資料傳送到 Meilisearch 之前修改資料,例如移除欄位。請查看 strapi-plugin-meilisearch 頁面上的所有自訂選項。
下一步是什麼
本教學課程示範如何將您的 Strapi 集合新增至 Meilisearch。
在大多數實際情況下,您通常會建立自訂搜尋介面,並使用 Meilisearch 的 API 擷取結果。若要了解如何快速建立自己的前端介面,請查看前端整合頁面指南。