02. januar 2013 - 13:39Der er
15 kommentarer og 1 løsning
Hvordan designer jeg dette - site ala dba.dk..
Jeg har brug for lidt hjælp til hvordan man opbygger en web-applikation alá dba.dk.
Det jeg har lidt svært ved at gennemskue er hvordan de har opbygget de forskellige annoncetyper. Det jeg mener, er: Hvis jeg opretter en bil-annonce kan jeg angive ting som: Mærke model, KM, brændstof - mange af disse ting kan jeg også angive som søgekriterium når jeg søger i bil-annoncerne. Hvis jeg derimod vil oprette en båd-annonce kan jeg angive ting som antal sovepladser, motorplacering, tilbehør mv. Disse ting kan jeg således også søge på når jeg kigger i båd-annoncerne. Mit spørgsmål er så: Hvordan er websitet, og databasen opbygget - i generelle termer, og altså ikke specifikt hvordan de har gjort - hvad er den "rigtige" måde?
Som jeg selv tænker det, så må man have en "default" annonce webside(skabelon), som bruges når man opretter annoncer uden specifikke søgekriterier(som biler og både fx har). I databasen må man så have et table til generelle data(såsom pris, dato, overskrift mv.) som alle annoncer deler, og herudover må man så have et table for hver "specielle" annoncetype alá biler og både.... Er det nogenlunde rigtigt opfattet eller er der en anden "rigtig måde at gøre det på? Det virker bare lidt "stort" at skulle oprette en annonce-skabelon samt table, for hver ikke-default annonce type....
en tabel for hver type bliver et helvede at opdatere og vedligholde - mon ikke det bare er en tabel for type (bil, båd...), en tabel for data (mærke, km brændstof...) og så en mange-til-mange relationstabel mellem dem.
keysersoze: Mange tak for kommentar, men tror du kunne uddybe det lidt - kan ikke helt overskue hvordan det skulle kunne hænge sammen. Man er jo stadig nødt til, at have en oprettelsesside pr. forskellige annoncetype(!?) og den med DB'en fangede jeg ikke helt...
Med hensyn til forskellige attributter i databasen, saa er der forskellige maader at goere det paa:
1) en tabel for hver type med de rigtige attributter 2) en tabel med forenings maengden af alle attributter og saa bruger man NULL for de attributter som ikke er relevante 3) en tabel med et langt tekst felt hvor der gemmes XML med de specifikke attributter 4) en tabel med faelles maengden af attributter og en anden tabel med id + attribut navn + attribut vaerdi
Hvis der ikke kan soeges i specifikke attributter, saa er #3 langt nemmest.
Hvis der skal soges, saa enten #4 eller #3 (og lev med tung soegning).
"Annoncer" (Indeholder data som er fælles for alle annoncer, så som dato, pris, overskrift mv.)
"Annoncer_Motorbåde" (Specifik info for annoncer med motorbåde) "Annoncer_Biler" (Specifik info for annoncer med biler) "Annoncer_Bøger" (Specifik info for annoncer med bøger) osv. osv.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.