-
Notifications
You must be signed in to change notification settings - Fork 2
Models
Mikkel94 edited this page Apr 23, 2018
·
2 revisions
Vi har delt opp modellene i 2 deler, fg_auth og api. Dette for å gjøre det mer oversiktelig.Vi har lagt innlogging og brukere til fg_auth, resten(som skal brukes av frontend og api-delen av applikasjonen,som du skal kunne hente ut med GET, POST) er lagt til api
Forkortelse | Verbose |
---|---|
FK(<model name>) | Foreign Key(<model name>), FK linker til en annen modell |
MtM(<model name>) | ManyToManyField(<model name>), MtM er array med FKs |
CF(<length>) | CharField(<length>) |
IF | IntegerField |
COMMENT | Dette er en kommentar, ikke en del av tabellen |
BF | BooleanField |
Alle modeller har også et felt som heter pk (private key) som er en unik index som django automagisk legger til i hver entitet for at det skal være feilfritt at hver rad i SQLtabellen er unike.
Attribute name | Type | Description |
---|---|---|
No attributes, only methods | create_user and create_superuser | lager brukere (kun de med spesiell tilgang kan gjøre dette) |
Attribute name | Type | Description |
---|---|---|
name | CF(64) | navn på jobben, f.eks. 'Webutvikler' |
description | CF(256) | beskrivelse av jobben |
date_created | DateTimeField | når jobben ble laget (vi kan også bruke allerede lagde jobber når man lager/oppdaterer en bruker |
Attribute name | Type | Description |
---|---|---|
address | CF(100) | brukerens addresse |
zip_code | CF(16) | brukerens zip-code, length=16 pga kan være andre zip codes enn norske (selv om vi ikke har tenkt på å ta med land personen bor i...) er CF i tilfelle zipcode starter med '0' (da ville 0en forsvunnet hvis vi ikke fyller ut tallet med at det skal være minst 4 tall i inten, men da ville det blitt kluss med zip codes som ikke er 4 tall og starter med 0, så dette var det beste tenkte vi |
city | CF(30) | brukerens bosted (by) |
phone | CF(15) | samme begrunnelse som med zip_code |
member_number | IF | medlemsnummer til Samfundet(rødt kort), burde kanskje vært CF(x), men fungerer greit som det er pga vi kan sette min-length |
COMMENT: | FG-INFO | Tidligere hadde vi en egen databaseentitet/modell som het fg-info som fungerte som "brukere" for FG, hvor de la inn ekstra informasjon (informasjonen som blir beskrevet nedenfor denne kommentaren), vi kuttet ut dette for å ikke ha flere "dobble" brukere |
opptaksaar | IF | året en FGer er tatt opp |
gjengjobber | MtM(Job) | jobber en FGer har/har hatt |
hjemmeside | CF(255) | hjemmeside til en spesifikk FGer, f.eks. www.castillo.no |
uker | CF(255) | Hvilke uker en FGer har vært med på, f.eks '15, 17' etc. |
fg_kallenavn | CF(255) | kallenavn til en FGer (ikke i bruk atm) |
bilde | ImageField | Kan oppgraderes til VersatileImageField senere, er bare profilbilde så ikke nødvendig egt. men kan være greit å få gjort |
aktiv_pang | BF | true hvis er aktiv pang, false hvis ikke aktiv pang. Today.date må være >2 mer enn opptaksår for at denne skal kunne være huket av |
comments | CF(255) | Skal bli brukt til å beskrive hva denne personen kan hjelpe deg (en utenforstående) med på Samfundet |
downloaded_photos | MtM(Photo, through UserDownloadedPhoto) | Tracker hvilke bilder denne brukeren har lasta ned |
Attribute name | Type | Description |
---|---|---|
photo | FK(Photo) | FK til bilde som er lastet ned |
user | FK(User) | Dette ser ut som en Circular dependency, her kan ting gå galt, bør sjekke opp dette, helst før prod |
date_downloaded | DateTimeField | tidspunkt for når bildet ble lastet ned |
Attribute name | Type | Description |
---|---|---|
name | CF(50) | navn på tag |
Attribute name | Type | Description |
---|---|---|
name | CF(80) | Navn på category |
Attribute name | Type | Description |
---|---|---|
name | CF(80) | navn på media, altså hvilken type det er, som f.eks. 'analog' eller 'digitalt' osv. |
Attribute name | Type | Description |
---|---|---|
name | CF(5) | FG har en "stygg" måte å navngi album på, men navnene blir korte og presise da |
date_created | DateTimeField | dato album ble opprettet |
description | CF(32) | lengre beskrivelse av albumet, siden navnene er "stygge" er dette brukt som et verbose navn |
type | PositiveSmallIntegerField | vet ikke om et eneste sted vi bruker dette her, men er nok en "beskrivelse" på hva slags type album det er, som f.eks. om det er et album for analoge eller digitale bilder |
Attribute name | Type | Description |
---|---|---|
name | CF(80) | navn på stedet hvor bildene er tatt, f.eks. 'storsalen' |
Attribute name | Type | Description |
---|---|---|
name | CF(16) | navn på securitylevel vi tilegner til hvert bilde |
Beskriver hvordan data tilhørende til hvert bilde ser ut
Attribute name | Type | Description |
---|---|---|
photo | VersatileImageField | ImageField som kan inneholde blandt annet flere forskjellige størrelser av bilder. |
motive | CF(256) | Motiv (hva som er på bildet, er alltid navnet på det eventet som er tatt bilde av) |
description | CF(2048) | nytt felt, skal bli brukt som en mer verbose motiv |
date_taken | DateTimeField | dato bildet er tatt/eventet starter |
photo_ppoi | PPOIField | Ikke i bruk såvidt jeg vet ennå, men her skal man senere kunne sette "midtpunktet" til bildet på ansiktet til folk etc. |
page | IF | side bildet ligger på i albumet |
image_number | IF | nummeret på bildet på siden det ligger på i albumet |
lapel | BF | True hvis bildet er et oppslagsbilde, false hvis ikke. Dette blir aldri brukt av fotografene som er litt synd |
scanned | BF | brukes kun på analoge bilder, true hvis man har scannet bildet, false hvis ikke |
on_home_page | BF | true hvis bildet skal vises på forsiden, false hvis ikke |
splash | BF | true hvis bildet skal vises på forsiden som det store bildet på toppen, false hvis ikke. Kun det siste opplastede splash bildet vises |
security_level | FK(SecurityLevel) | Bestemmer hvem som kan se dette, FG/HUSFOLK/ALLE |
tags | MtM(Tag) | tagsene som er brukt på bildet, blir brukt til å legge på info om hvem som har tatt bildet (uten at de blir kreditert, men fortsatt kan finne igjen arbeidet sitt senere), og "artige" kommentarer og sånn |
category | FK(Category) | Hvilken kategori bildet tilhører |
media | FK(Media) | Hvilken type medium ble brukt til å ta bildet |
album | FK(Album) | Hvilket album bildet ligger i (mest nytteverdi mtp. analoge bilder som legges i fysiske permer) |
place | FK(Place) | Hvor på huset bildet er tatt (eller utenfor hvis det er tatt utenfor huset) |
En samling av data som trengs for å gjennomføre en bestilling av bilder
Attribute name | Type | Description |
---|---|---|
name | CF(64) | navn på den som har bestillt |
CF(32) | epost til den som har bestillt | |
address | CF(64) | Addressen til den som har bestillt |
place | CF(32) | Stedsnavn tilhørende til addresse |
zip_code | CF(4) | postnummer |
post_or_get | CF(16) | om personen skal hente ordren i Luka eller om vi skal sende |
comment | CF(512) | ekstra kommentarer om ordren |
date_created | DateTimeField | dato ordren ble gjort |
order_completed | BF | true hvis ordren er sendt/lagt i luka, false ellers, bestemmer også hvor i Frontend ordren skal vises (completed/not completed fanen) |
Bilder som tilhører en ordre
Attribute name | Type | Description |
---|---|---|
photo | FK(Photo) | hvilket bilde som er i dette OrderPhoto |
order | FK(Order) | hvilken Order bildet tilhører |
format | CF(16) | hvilket format bildet skal leveres i, f.eks. A4 eller Digitalt |