【Phoenix】 Mix 命令

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
相關文章
相關標籤/搜索