Gå til innholdet

Kodegenerering

Fra seksjonen Kode genererer Restorm koden til applikasjonen din ut fra designet ditt. Genereringen bygger på Cookiecutter/Copier-kompatible maler: dine egne, eller de Restorm tilbyr.

Seksjonen Kode: en lagt til mal, en utdatamappe og forhåndsvisningen av det genererte filtreet før skriving

  1. Legg til en eller flere maler — via malbiblioteket.
  2. Velg en utdatamappe (absolutt, eller relativ til prosjektet).
  3. Klikk på Generer prosjektet.

Genereringen renderes i en sandkasse og produseres deretter i form av en forhåndsvisning: Restorm viser deg treet av genererte filer og skriver ingenting før du har bekreftet. Du kan da Skrive til utdatamappen eller Avbryte. (Genereringen er blokkert så lenge det gjenstår valideringsproblemer.)

En mal kan erklære spørsmål (i Copiers forstand — for eksempel en project_slug), som du besvarer på genereringstidspunktet. Svarene dine lagres i en fil .copier-answers.yml i roten av utdataen, og lastes inn på nytt ved neste generering.

Genereringen er ikke enveis. Å regenerere spiller rollen som en copier update: Restorm husker en base og utfører en treveis-fletting mellom malens nye utdata og dine lokale endringer — endringene dine overskrives altså ikke. Du videreutvikler designet ditt (eller malen), du regenererer, og koden oppdaterer seg samtidig som arbeidet ditt bevares.

Malbiblioteket tilbyr fire kilder:

  • Offisiell — malene vedlikeholdt av Restorm, synlige for alle.
  • Organisasjon — malene delt innenfor organisasjonen din, private for dens medlemmer. Det er en Enterprise-funksjon: en admin — eller et medlem med retten administrer maler — legger dem til eller fjerner dem (repositoriets URL + beskrivelse), fra fanen Maler <organisasjon> i biblioteket eller fra administrasjonsdashbordet. Se Offisielle maler og organisasjonsmaler.
  • Repositorium — et GitHub-repositorium eier/navn (typisk en fork av en offisiell mal som du har tilpasset).
  • Lokal mappe — en mal under utvikling, uten nettverk.

Strukturen til en mal og det offisielle katalogen er beskrevet på siden Offisielle maler. Hva en mal mottar fra designet ditt (modeller, ruter og flaggene deres) er beskrevet i detalj i Malens kontekst, og malens egne innstillinger i Genereringsvariabler.