Skip to content

如何建置這個平臺?

乾太 edited this page Jul 3, 2019 · 7 revisions

如果你是想使用開源資料的開發者

基本上你不用理會這個專案,我們會提供一個雲端平臺給大家使用,不過目前仍在開發階段,所以尚待補充。


如果你是想參與這項開源計畫的開發者

為了以更時髦的方式參與專案,你可能會需要學會 Pull requests 這件事,推薦可以參閱下面這篇教學,淺顯易懂。

與其它開發者的互動 - 使用 Pull Request(PR)

你需要在你的電腦上架設他,以方便開發上的測試、維護,首先這項開源專案是使用 Laravel 來開發的,所以你的電腦會需要以下環境:

  • PHP >= 7.1.3
  • BCMath PHP Extension
  • Ctype PHP Extension
  • JSON PHP Extension
  • Mbstring PHP Extension
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

接下來你可以參閱 Laravel Boilerplate 的建置步驟,或者參閱以下翻譯:

[!] 注意:推薦新手如果沒有環境的話,直接去下載 XAMPP 來使用,它包含了 apache 以及 MySQL 這兩個必要的東西,如果你是老練的棒棒的話,那你可以忽略這條注意事項。

  1. 下載 下載這項專案並且放置在您的電腦上。(這項專案是在 Laravel Homestead 開發的,我強烈建議您使用它或 Laravel Valet,以獲得最佳的伺服器配置,並且安裝時沒有問題。)

附註:我個人是使用 php artisan serve 來運行專案,缺點是無法測試 HTTPS 就是了。

StackOverflow - Laravel php artisan serve to mimic HTTPS

  1. 設定檔 此專案的根目錄當中附帶 .env.example 文件,你必須將這份文件重新命名為 .env。 注意:請確保系統可以顯示隱藏文件,因為這份文件預設是隱藏的。

  2. Composer Laravel 專案是透過 PHP Composer Tool 來進行套件管理的,所以您需要透過終端機進入專案目錄下,並且出入以下指令來安裝依賴項目。

composer install
  1. npm/yarn 為了安裝前端開發的 JavaScript Packages,您將需要 Node Package Manager,以及 Facebook 可選的 Yarn Package Manager 為了安裝前端開發的Javascript包,您將需要Node Package Manager,以及Facebook可選的Yarn Package Manager(推薦)

如果您只安裝了 npm,則必須從專案的根目錄運行這項指令:

npm install

如果您安裝了 Yarn,請從專案的根目錄運行它:

yarn
  1. 建立資料庫 為了讓伺服器和資料庫能夠正常的進行連接,您必須在 .env 當中設定一些參數:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
  1. Artisan Commands 我們要做的第一件事情就是設定 Laravel 在進行加密時會使用到的 Key。
php artisan key:generate

您應該會看到一條綠色的訊息,並說明 Application key set successfully.,除此之外,您還應該可以看到 .env 文件當中 APP_KEY 的變數被填寫了。

接下來我們要檢查您的資料庫連線是否正確,我們將運行 Database: Migrations 來進行資料庫遷移的動作:

php artisan migrate

您應該可以看到已經遷移每個資料表的資訊,如果您沒有,並且看到錯誤訊息,那麼您的連接設定很可能並不正確。 我們現在要設置管理員帳戶訊息,為此,您需要到 database/seeds/Auth/UserTableSeeder.php 並更改管理員帳戶的名稱、電子郵件及密碼,您可以新增其他用戶,但不要刪除管理員帳戶,否則您將無法進入後端的管理系統。

現在將資料寫入資料庫:

php artisan db:seed

您應該為每個播種的文件收到一條消息,您應該在數據庫表中看到這些信息。

  1. NPM Run '*' 現在您已經擁有資料表以及預設資料,您需要建構 CSSJavaScript。 這些文件是使用 Laravel Mix 所生成的,它是許多工具的包裝器,可以在專案跟目錄中的 webpack.mix.js 當中運行。

您可以在終端機執行這項指令:

npm run <command>

# 例如 `run watch`,這可以持續的針對 `SCSS` 以及 `JS` 進行編譯
npm run watch

# 或者 `run production`,這雖然只會針對 `SCSS` 以及 `JS` 進行編譯一次,但是編譯成 `min` 檔案,通常用於上線時使用。
  1. PHPUnit 安裝完專案之後,您可以透過 PHPUnit 對專案進行測試,以確保所有功能都可以正常運行,您可以從專案的根目錄執行:
phpunit

PHPUnit

您將看到數百項測試當中,每一個都出現一個點(。),然後在最後提供通過測試的數量,全新的安裝應該是沒有失敗的。

  1. Storage:link 安裝專案後,必須運行這項指令,讓使用者可以正常讀取 storage 的檔案,例如使用者的大頭貼:
php artisan storage:link
  1. 登入 安裝專案並且可以在瀏覽器當中瀏覽網站後,點擊導航欄右側的登入按鈕,預設的管理員帳號密碼是: 帳號: admin@admin.com 密碼: secret

其他注意事項

  1. 如果您的作業系統是 Unix/LinuxmacOS 的話,安裝 Laravel 以後,您可能需要配置一些權限,給予 storagebootstrap/cache 可由 Web 伺服器寫入,否則 Laravel 將無法運行,如果您使用的是 Homestead 虛擬機的話,則已經設置這些權限。

最後

如果你想參與後端的開發,你可能要遵循我習慣的架構:

P1. 純靠北工程師怎麼做的?就只是個簡單的後端架構而已。

如果你想參與前端的開發,你可能要把前端邏輯寫在 resources/sass 以及 resources/js 當中。

如果你想參與討論,你可以加入我們的 Discord 群組當中。