建立鳳凰專案

為了在 Phoenix 框架中建立你的第一個專案,你應該安裝 Elixir,Erlang,Hex 和 Phoenix 歸檔檔案。你還應該安裝 PostgreSQL 和 node.js 來構建預設應用程式。

開啟終端或命令提示符,然後轉到要在其中建立應用程式的檔案系統上的位置。phoenix.new 是 mix 命令,它將為你建立新專案。假設我們的應用程式的名稱是 hello_phoenix_world,那麼輸入

$ mix phoenix.new hello_phoenix_world

或者,我們可以從任何目錄執行 mix phoenix.new 以引導我們的 Phoenix 應用程式。Phoenix 將接受新專案目錄的絕對路徑或相對路徑

$ mix phoenix.new /Users/username/work/elixir-projects/hello_phoenix_world

輸出

mix phoenix.new hello_phoenix_world
* creating hello_phoenix_world/config/config.exs
* creating hello_phoenix_world/config/dev.exs
* creating hello_phoenix_world/config/prod.exs
...
* creating hello_phoenix_world/web/views/layout_view.ex
* creating hello_phoenix_world/web/views/page_view.ex

Fetch and install dependencies? [Yn]

Phoenix 將為你的專案生成目錄結構,它將建立應用程式所需的所有檔案。Mix 會詢問你是否要安裝其他必需的依賴項。我們對此說

Fetch and install dependencies? [Yn] Y
* running mix deps.get
* running npm install && node node_modules/brunch/bin/brunch build

一旦依賴安裝,任務會提示你更改到專案目錄並啟動應用程式。

Move into your new project folder:

    $cd hello_phoenix_world

你現在需要設定 postgres 使用者名稱和密碼,除非它已使用預設的 postgres useranme 和 postgres 密碼進行設定。編輯 config/dev.exs 檔案並設定使用者名稱和密碼:

# config/dev.exs
config :hello_phoenix_world, HelloPhoenixWorld.Repo,
  adapter: Ecto.Adapters.Postgres,
  username: "postgres",
  password: "postgres",
  database: "hello_phoenix_world_dev",
  hostname: "localhost",
  pool_size: 10
  
Now, create the database with the ecto mix task:

    $ mix ecto.create

We have a working application! Run your Phoenix application:

    $ mix phoenix.server

You can also run your app inside IEx (Interactive Elixir) as:

    $ iex -S mix phoenix.server

Load `http://localhost:4000` into your browser and you will see the default landing page of your application.

現在,讓我們向 Phoenix 應用程式新增 hello world。開啟 web/templates/page/index.html.eex 檔案並用以下內容替換內容並儲存檔案:

<h2>Hello World</h2>

如果你尚未退出伺服器,則會自動編譯新程式碼,你的瀏覽器現在應顯示 Hello World 訊息。

你現在可以建立 CRUD 資源

最後,要退出伺服器,請連續兩次輸入 ctrl-c crtl-c(同時按下 control keyc 鍵)。