跳到內容

程式碼生成

在 程式碼 區段,Restorm 根據您的設計 生成 您的應用程式 程式碼。生成 依託於 Cookiecutter/Copier 相容的 範本:您自己的,或 Restorm 提供的。

程式碼區段:一個已新增的範本、一個輸出資料夾,以及寫入前所生成樹的預覽

  1. 新增一個或多個範本 —— 透過 範本庫。
  2. 選擇一個 輸出資料夾(絕對路徑,或相對於專案)。
  3. 點擊 生成專案。

生成會 在沙箱中渲染,然後以 預覽 形式呈現:Restorm 向您展示所生成檔案的 樹,並 在您確認之前不寫入任何內容。之後您可以 寫入輸出資料夾 或 放棄。(只要還存在驗證問題,生成就會被阻擋。)

一個範本可以宣告 問題(Copier 意義上的 —— 例如一個 project_slug),您在 生成時回答它們。您的回答會儲存在輸出根目錄的一個 .copier-answers.yml 檔案中, 並在下次生成時重新載入。

生成不是單向的。重新生成扮演著 copier update 的角色:Restorm 記住一個基線, 並在範本的新輸出與您的本機修改之間執行一次 三方合併 —— 因此您的更改 不會被覆寫。您讓設計(或範本)演進,您重新生成,程式碼在保留您工作的同時得到 更新。

範本庫 提供四種來源:

  • 官方 —— 由 Restorm 維護的範本,對所有人可見。
  • 組織 —— 在您的 組織內部共享、僅對其成員私有的範本。這是一個 Enterprise 功能:一個 管理員 —— 或一個擁有 管理範本 權限的成員 —— 從庫的 Templates <組織> 分頁,或從管理儀表板,新增或移除它們(儲存庫 URL + 描述)。參見官方範本與組織範本。
  • 儲存庫 —— 一個 GitHub owner/name 儲存庫(通常是您改編過的某個官方範本的 fork)。
  • 本機資料夾 —— 一個正在開發中的範本,無需網路。

範本的結構和官方目錄在官方範本頁面中描述。 範本從您的設計 接收 什麼(模型、路由及其旗標)在範本的上下文 中詳述,而範本自身的設定在生成變數中詳述。