Gå til indhold

Kodegenerering

Fra sektionen Kode genererer Restorm koden til din applikation ud fra dit design. Genereringen bygger på Cookiecutter/Copier-kompatible skabeloner: dine egne, eller dem, Restorm tilbyder.

Sektionen Kode: en tilføjet skabelon, en outputmappe og forhåndsvisningen af det genererede filtræ før skrivning

  1. Tilføj en eller flere skabeloner — via skabelonbiblioteket.
  2. Vælg en outputmappe (absolut, eller relativ til projektet).
  3. Klik på Generer projektet.

Genereringen renderes i en sandkasse og produceres derefter i form af en forhåndsvisning: Restorm viser dig træet af genererede filer og skriver intet, før du har bekræftet. Du kan da Skrive til outputmappen eller Afbryde. (Genereringen er blokeret, så længe der er valideringsproblemer tilbage.)

En skabelon kan erklære spørgsmål (i Copiers forstand — for eksempel et project_slug), som du besvarer på genereringstidspunktet. Dine svar gemmes i en fil .copier-answers.yml i roden af outputtet og genindlæses ved den næste generering.

Genereringen er ikke ensrettet. At regenerere spiller rollen som en copier update: Restorm husker en base og udfører en trevejsfletning mellem skabelonens nye output og dine lokale ændringer — dine ændringer overskrives altså ikke. Du udvikler dit design (eller skabelonen), du regenererer, og koden opdaterer sig, mens dit arbejde bevares.

Skabelonbiblioteket tilbyder fire kilder:

  • Officiel — skabelonerne vedligeholdt af Restorm, synlige for alle.
  • Organisation — skabelonerne delt inden for din organisation, private for dens medlemmer. Det er en Enterprise-funktion: en admin — eller et medlem med retten administrer skabeloner — tilføjer eller fjerner dem (repositoriets URL + beskrivelse), fra fanen Skabeloner <organisation> i biblioteket eller fra administrationsdashboardet. Se Officielle skabeloner og organisationsskabeloner.
  • Repositorium — et GitHub-repositorium ejer/navn (typisk en fork af en officiel skabelon, som du har tilpasset).
  • Lokal mappe — en skabelon under udvikling, uden netværk.

En skabelons struktur og den officielle katalog er beskrevet på siden Officielle skabeloner. Hvad en skabelon modtager fra dit design (modeller, ruter og deres flag) er beskrevet i detaljer i Skabelonens kontekst, og skabelonens egne indstillinger i Genereringsvariabler.