mix phx.gen.html 命令生成模板
# 其中 name 和 age 是 schema 字段名稱,後面跟的是類型
# 下面這樣的寫法,會生成 controller 和 service 層的,可是咱們一般不須要生成 service 層面的結構
mix phx.gen.html Account User users [name:string age:integer]
# 這樣就能生成沒有 schema 結構的 HTML 控制:
mix phx.gen.html Account User users --no-context
# 可是有時候咱們又要把它放在以前生成過的結構下面,方法以下:
# 把 user 放在了以前生成的 Merchant 目錄下面,當作是 user 的子目錄
mix phx.gen.html Account User users --no-context --web Merchant
# 若是不生成 schema 的話,基本 Account 和 students 是隨便填的。
# Account 和 students 隨便填,會致使 生成的文件中的名稱,不對應。這點須要本身改
# Account 是 會查詢到服務中有 Account 的模塊
# students 是 表名
# 下面是把 Student 放在 Merchant/User/ 下面的文件名
mix phx.gen.html Account Student students --no-context --web Merchant.User
mix ecto.gen.migration
# migration文件名
# 生成 migration 文件
mix phx.gen.schema
# 生成 schema,默認生成 migration 文件
# Blog.Post:生成的模塊名,若是是這樣兩層的,會生成 blog 文件夾,而後把 post 放在裏面
# blog_posts: 表名
# blog_posts 後面的[可選]: 後面是字段名,和類型
mix phx.gen.schema Blog.Post blog_posts title:string views:integer
# 不要生成 migration, 帶上參數 --no-migration
mix phx.gen.schema Blog.Post blog_posts --no-migration
mix phx.gen.contenxt
# 生成 處理數據庫查詢 API 的模塊
# Accounts: 文件名,同時也是模塊名稱,會自動帶上根目錄的模塊名稱
# User: schema 的名稱
# users: 表名
# users 後面的是字段名[可選]
mix phx.gen.context Accounts User users name:string age:integer
# 有時候咱們已經生成了 schema, 就不須要再讓它生成 schema 了。用戲碼的參數
# 默認生成 context 外,還有單元測試的文件 在 test 裏面
mix phx.gen.context Accounts User users --no-schema
其餘
- mix ecto.migrate: migrate 數據庫結構
- mix ecto.rollback: 回退上一次 migrate
- mix phx.routes: # Prints all routes, 打印全部路由
- mix clean: # Deletes generated application files, 刪除生成的 應用文件
- mix phx.server: # Starts applications and their servers, 啓動應用和它的服務
- mix deps.get: # Gets all out of date dependencies, 獲取全部過時依賴項
- iex -S mix: # Starts IEx and runs the default task, 啓動IEx並運行默認任務
- =
# Ps: mix help: 顯示全部 mix 命令
mix help 命令: 查看命令的詳細幫助,好比 mix help phx.gen.html
命令與它們默認生成的文件
mix phx.digest # Digests and compresses static files
mix phx.digest.clean # Removes old versions of static assets.
mix phx.gen.cert # Generates a self-signed certificate for HTTPS testing
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