创建凤凰项目
为了在 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 key
和 c
键)。