9
Tags:
grails
hjemmeside
groovy
Skrevet af
Bruger #5097
@ 30.03.2011
Opret ny model:En model er den del der fortælle hvad vi ønsker at kunne gemme i vores database. Vi vil i denne artikel kikke på en vennebog, med informationer omkring vores venner. Derfor ønsker vi felter i databasen omkring vores venners navne, deres alder og så videre.
Lad os starte med at oprette en model. En hurtig genvej er at højreklikke på projektet, vælge
Grails Tools<Open Grails Command Prompt. I promten skriver du:
create-domain-class Venhvor Ven i dette tilfælde er modellens navn. Dette laver en fil med navnet
Ven.groovy under
domain<projektnavn.
I filen laver du instanser for alle de felter som skal være i databasen. Du kan bruge alle de datatyper som du kender fra Java: String, integers, boolean osv. Selve opbygningen er næsten også som var det i Java du koder. To ting er dog værd at nævne:
- I Groovy behøver man ikke at afslutte med ”;”. Man kan godt, men for opnå pænest koder anbefales at du undlader ”;”, eller i hvert fald er konsekvent i dit valg.
- I Groovy kan variabel-typen for heltal (integer) både skrives således:
Integer og ligesom i Java
int.
I vores tilfælde laver vi en database med vores venners navne, alder, og en boolean omkring om de studerer. Dette ser således ud:
- package venneside
-
- class Ven {
- String navn
- Integer alder
- boolean studerer
- }
Når du har rettet i modellen, bliver man nød til at genstarte serveren. Terminer derfor serveren nu (hvis den er startet) inden du starter den op igen ved at køre run-app (knap findes ved at højreklikke på projektet og vælge
Run As<Grails Command (Run-app)).
Opret Controller og View til vores modelVi vil nu gerne oprette en controller og et view til vores oprettede model. Grails har her mulighed for at genererer dette for os. Man kan naturligvis også lave det manuelt, men for enkelhedens skyld vil vi i denne artikel benyttes os af Grails genererings værktøj. Vi kan bagefter, hvis vi ønsker det, rette i de genererede koder, så vi opnår det ønskede resultat.
Højreklik på projektet i projekt oversigten og vælg
Grails Tools<Grails Command Wizard.
I boksen der kommer frem finder du
generate-all og trykker
next. På næste side finder du din model. I vores tilfælde Ven.groovy. Derefter afslutter vi med
finish, og nyder at Grails opretter alt for os.
Vi mærker nu at vi inde under
controllers<projektnavn nu har fået oprettet en controller med navnet
VenController.groovy.
Navnet her er en konvension og man må ikke uden vide ændre navnet på controlleren. Dette skyldes at hvis Grails finder en model med navnet Ven.groovy, så vil den uden videre vide at dens controller hedder
VenController.groovy. En controller har altså som standart suffikset Controller.groovy.
Vi bemærker også at der under views er oprettet en mappe med navnet ven. Denne mappe indeholder fire filer:
Disse filer er de sider der er blevet oprettet og kan besøges. Filerne er af typen gsp. Dette er et filformat som kan indeholde almindelig HTML, men som også har mulighed for at nogen såkaldte g-tags koder. Mere om dette senere.
Filen
list.gsp viser en liste over alt data i tabellen.
Show.gsp viser en specifik instans.
Edit.gsp benyttes til at rette i en instans. Til sidst har vi
create.gsp som benyttes til at oprette nye instanser.
Test af vores model, view og controllerVi har nu oprettet en model, et view og en controller. Vi vil nu gerne teste om det virker.
Hvis ikke siden allerede køre så start den op (gøres ved at højreklikke på projektet og vælge
Run As<Grails Command (Run-app)). På forsiden findes nu en link til din nye controller. Klik nu på denne:
Den nye side vi kommer ind på er
list.gsp, som nævnt tidligere bruges til (som udgangspunkt) at liste indholdet af databasen. Desværre er listen som standart tom:
Heldigvis kan vi oprette nye instanser ved at trykke på ”Ny Ven”, hvilket vil føre dig til
create.gsp.
Bemærk at hjemmeside adressen som udgangspunkt ser således ud:
/ditprojekt/controller/action/parameter
hvor controlleren i dette tilfælde er
ven, action er list, create, show eller edit (kunne naturligvis også være andre, hvis du har oprettet nogen selv). Parameteret kunne være id'et på dit instans, hvis du besøger
show.gsp.
Hvad synes du om denne artikel? Giv din mening til kende ved at stemme via pilene til venstre og/eller lægge en kommentar herunder.
Del også gerne artiklen med dine Facebook venner:
Kommentarer (4)
Hvorfor bruge grails istedet for rails?
Hej Asker. Tja... Det er lidt et religions-spørgsmål. Altså sådan lidt smag og behag. De kan begge det samme. Grails er kraftigt inspireret af Ruby On Rails, så også opbygningen virker ens i begge miljøer.
Jeg tror det væsentligste argument for at vælge Grails frem for Ruby er hvis du allerede kender til Java, eller evt. sprog der ligner såsom C, C++ og PHP. Kender du til dem vil du føler dig rigtig godt hjemme i Grails.
De fleste med kendskaber til Ruby skal nok vende sig til deres (efter min mening) lidt anderledes syntax. Så derfor er Grails nok et godt valg for mange...
Hej, Jeg syntes at det var en god introduktion til Grails, og det har virkelig vækket min nysgerrighed til dette framework. Jeg håber at der kommer en efterfølger, som går lidt mere i dybden med frameworket, og gerne en der hjælper begynderen som mig igang med at lave en hjemmeside ved hjælp af grails.
Hey Martin. Tak for rosen. Jeg tænker også stærkt over tanken om en to'er. Vil måske lave en om ikke så længe
Du skal være
logget ind for at skrive en kommentar.