書童造輪子之自動生成資料字典

jormin發表於2017-04-01

每次開發專案時,總是會被要求提供資料字典,每次手動寫文件太累了,所以寫了 這個擴充套件自動讀取資料庫資訊 並顯示在網頁上,支援匯出 HtmlPDF 檔案。

  1. 匯出 Html 實際為生成並匯出一個離線版本的壓縮包。
  2. 匯出 PDF 使用了 laravel-snappy 擴充套件包
  3. 匯出 Markdown 為資料表增加了錨點連結。

安裝

  1. 安裝包檔案

    $ composer require jormin/laravel-ddoc

配置

  1. 註冊 ServiceProvider:

     Jormin\DDoc\DDocServiceProvider::class,
  2. 建立配置檔案:

     php artisan vendor:publish

    執行命令後會在 config 目錄下生成兩個檔案:

    • laravel-ddoc.php:本擴充套件配置檔案,用於配置文件底部 Copyright 文案和連結。

    • snappy.phplaravel-snappy 的配置檔案,用於配置匯出 pdf 的選項。

      pdf.binary 項配置 wkhtmltopdf 執行檔案的目錄

      linux/unix/mac 系統的執行檔案存放於 專案目錄/vendor/h4cc/wkhtmltopdf-[amd64|i386]/bin/ 目錄下

      wundiws 系統的執行檔案存放於 專案目錄/vendor/wemersonjanuario/wkhtmltopdf-windows/bin/[64bit|32bit]/ 目錄下

使用

安裝擴充套件後,瀏覽器訪問 [http|https]://[your domain or ip]/ddoc

參考問題

  1. Q:匯出的 PDF 檔案中文不顯示或者亂碼?

    A:導致此問題的原因是機器上沒有安裝中文字型,解決方式如下

     1、先從本機或者網路上下載所需的中文字型
     2、修改字型檔案的許可權,使root使用者以外的使用者也可以使用
         $ cd /usr/share/fonts/chinese/
     3、建立字型快取
         $ sudo mkfontscale
         $ # 如果提示 mkfontscale: command not found,則需要安裝# sudo apt-get install ttf-mscorefonts-installer
         $ sudo mkfontdir 
         $ sudo fc-cache -fv
         $ # 如果提示 fc-cache: command not found,則需要安裝# sudo apt-get install fontconfig

參考圖

License

The MIT License (MIT). Please see License File for more information.

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章