phoenix-framework Logisk grund


Exempel

Rätt anrop av hjälpmoduler och funktioner kan vara skrämmande eftersom

  • dessa genereras dynamiskt (t.ex. när du skapar ett nytt projekt eller lägger till en ny resource )
  • de dokumenteras inte uttryckligen (t.ex. MyApp.ErrorHelpers.error_tag )
  • dokumentationen täcker inte alla exempel (t.ex. MyApp.Router.Helpers.*_path i Phoenix.Router ).

Även om de skapade hjälparna är spridda över hela ditt projekt men deras plats följer en solid logik. Du kan vänja dig dem ganska snabbt och lyckligtvis, när du genererar ett projekt med Phoenix, skickas koden med dokumentation via @doc @moduledoc @doc och @moduledoc .

Dessa dokument är inte bara begränsade till hjälpare men du kan också göra det

  • se ditt projekt uppdelat efter undermoduler / funktioner / makron
  • lägg till din egen dokumentation
  • leta upp alla funktioner som genererades under namnrymden av projektet (t.ex. MyApp.Repo innehåller callback-funktion implementeringar från Ecto.Repo )

Generera dokumenten

För att generera dokumentation från din källkod lägger du till ex_doc som beroende i filen mix.exs :

# config/mix.exs

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

Du kan använda Markdown inom Elixir @doc och @moduledoc attribut.

mix deps.get att hämta och sammanställa de nya modulerna och generera projektdokumentationen med mix docs . Ett exempel är de officiella Elixir Docs .

För att servera dem använder du omedelbart mix docs --output priv/static/doc och navigerar till my_app_url_or_ip/doc/index.html .

Ytterligare läsning:

Merparten av den här guiden refereras från Elixir Recipes .