合理

正确调用辅助模块和函数可能会令人生畏,因为

  • 这些都是动态生成的(例如,在创建新项目或添加新项目时)
  • 它们没有明确记录(例如,MyApp.ErrorHelpers.error_tag
  • 文档并未涵盖所有示例(例如,MyApp.Router.Helpers.*_path 中的 MyApp.Router.Helpers.*_path)。

虽然创建的帮助程序分散在整个项目中,但它们的位置遵循一个坚实的逻辑。你可以非常快速地习惯它们,幸运的是,当你使用 Phoenix 生成项目时,代码随附了 Elixir 的 @doc@moduledoc 模块属性的文档。

这些文档不仅限于帮助者,你也可以

  • 看看你的项目按子模块/函数/宏细分
  • 添加自己的文档
  • 查找在项目命名空间下生成的任何函数(例如,MyApp.Repo 包含来自 Ecto.Repo 的回调函数实现)

生成文档

要从源代码生成文档,请将 ex_doc 作为依赖项添加到 mix.exs 文件中:

# config/mix.exs

def deps do
  [{:ex_doc, "~> 0.11", only: :dev}]
end

你可以在 Elixir @doc@moduledoc 属性中使用 Markdown。

然后,运行 mix deps.get 来获取并编译新模块,并使用 mix docs 生成项目文档。一个示例输出是官方 Elixir Docs

要立即为他们服务,请使用 mix docs --output priv/static/doc 并导航至 my_app_url_or_ip/doc/index.html

补充阅读:

本指南的大部分内容均来自 Elixir Recipes