1. 已有命令html
mix app.start # Starts all registered apps mix app.tree # Prints the application tree mix archive # Lists installed archives mix archive.build # Archives this project into a .ez file mix archive.install # Installs an archive locally mix archive.uninstall # Uninstalls archives mix clean # Deletes generated application files mix cmd # Executes the given command mix compile # Compiles source files mix deps # Lists dependencies and their status mix deps.clean # Deletes the given dependencies' files mix deps.compile # Compiles dependencies mix deps.get # Gets all out of date dependencies mix deps.tree # Prints the dependency tree mix deps.unlock # Unlocks the given dependencies mix deps.update # Updates the given dependencies mix do # Executes the tasks separated by comma mix ecto # Prints Ecto help information mix ecto.create # Creates the repository storage mix ecto.drop # Drops the repository storage mix ecto.dump # Dumps the repository database structure mix ecto.gen.migration # Generates a new migration for the repo mix ecto.gen.repo # Generates a new repository mix ecto.load # Loads previously dumped database structure mix ecto.migrate # Runs the repository migrations mix ecto.migrations # Displays the repository migration status mix ecto.rollback # Rolls back the repository migrations mix escript # Lists installed escripts mix escript.build # Builds an escript for the project mix escript.install # Installs an escript locally mix escript.uninstall # Uninstalls escripts mix format # Formats the given files/patterns mix gettext.extract # Extracts translations from source code mix gettext.merge # Merge template files into translation files mix help # Prints help information for tasks mix hex # Prints Hex help information mix hex.audit # Shows retired Hex deps for the current project mix hex.build # Builds a new package version locally mix hex.config # Reads, updates or deletes local Hex config mix hex.docs # Fetches or opens documentation of a package mix hex.info # Prints Hex information mix hex.organization # Manages Hex.pm organizations mix hex.outdated # Shows outdated Hex deps for the current project mix hex.owner # Manages Hex package ownership mix hex.publish # Publishes a new package version mix hex.repo # Manages Hex repositories mix hex.retire # Retires a package version mix hex.search # Searches for package names mix hex.user # Manages your Hex user account mix loadconfig # Loads and persists the given configuration mix local # Lists local tasks mix local.hex # Installs Hex locally mix local.phoenix # Updates Phoenix locally mix local.phx # Updates the Phoenix project generator locally mix local.public_keys # Manages public keys mix local.rebar # Installs Rebar locally mix new # Creates a new Elixir project mix phoenix.gen.html # Generates controller, model and views for an HTML based resource mix phoenix.new # Creates a new Phoenix v1.3.2 application mix phoenix.server # Starts applications and their servers mix phx.digest # Digests and compresses static files mix phx.digest.clean # Removes old versions of static assets. mix phx.gen.channel # Generates a Phoenix channel mix phx.gen.context # Generates a context with functions around an Ecto schema mix phx.gen.embedded # Generates an embedded Ecto schema file mix phx.gen.html # Generates controller, views, and context for an HTML resource mix phx.gen.json # Generates controller, views, and context for a JSON resource mix phx.gen.presence # Generates a Presence tracker mix phx.gen.schema # Generates an Ecto schema and migration file mix phx.gen.secret # Generates a secret mix phx.new # Creates a new Phoenix v1.3.2 application mix phx.new.ecto # Creates a new Ecto project within an umbrella project mix phx.new.web # Creates a new Phoenix web project within an umbrella project mix phx.routes # Prints all routes mix phx.server # Starts applications and their servers 幫助命令使用: 好比: mix help mix phx.gen.json
2. 查看路由(方便進行功能的實現)web
mix phx.routes 參考: Generated hello app page_path GET / Hello.PageController :index page_path GET /index/:name Hello.PageController :appdemo user_path GET /user/:name Hello.UserController :index demo_path GET /api/demo Hello.DemoController :index demo_path GET /api/demo Hello.DemoController :index demo_path GET /api/demo/:id/edit Hello.DemoController :edit demo_path GET /api/demo/new Hello.DemoController :new demo_path GET /api/demo/:id Hello.DemoController :show demo_path POST /api/demo Hello.DemoController :create demo_path PATCH /api/demo/:id Hello.DemoController :update PUT /api/demo/:id Hello.DemoController :update demo_path DELETE /api/demo/:id Hello.DemoController :delete
mix phx.gen.json Accounts User users --table cms_users
phoenix 依賴 mix deps.get --only prod MIX_ENV=prod mix compile 資源(web) brunch build --production (構建) mix phx.digest (壓縮) 啓動 PORT=4001 MIX_ENV=prod mix phx.server or PORT=4001 MIX_ENV=prod iex -S mix phx.server or 守護進程模式 MIX_ENV=prod PORT=4001 elixir --detached -S mix do compile, phx.server
由於新版phoenix 腳手架建立web 的目錄已經調整到了lib目錄 <app>_web 命名,使用舊版本的代碼可能須要調整
https://hexdocs.pm/phoenix/deployment.html https://hexdocs.pm/phoenix/phoenix_mix_tasks.html