Django: jakie przyjac rozwiazanie ?

0

Witam,

Mam problem z moimi modelami w django ... zalozylem temat na stackoverflow ale nikt mi nie pomogl...pozwole sobie wrzucic link do pytania tutaj...czy bylby ktos w stanie przegladnac moje pytanie i pomoc w temacie ?

http://stackoverflow.com/questions/33701575/django-models-mtm-nested-formsets-to-update-attributes

1

Zamiast nazwy BestScore posłużyłbym się nazwą RunnerScore, która pozwala Ci przechowywać nie tylko te najlepsze wyniki, ale wszystkie. Wtedy ta tabelka pomogłaby Ci w odpytywaniu najlepszych wyników, ale i nie tylko, bo przecież mógłbyś ją wykorzystać do najgorszych wyników, czy też do porównywania z innymi zawodnikami.

0

Dokładnie tak jak napisał @pyholic. Stwórz tabelę Score albo RunnerScore, w której trzymasz wyniki zawodników. Z tych wyników jesteś wstanie wyciągnąć najlepsze, najgorsze, średnie wyniki. W innym przypadku, musiałbyś przy każdym dodaniu nowego wyniku, sprawdzać czy jest on wyższy od tego zapisanego w tabeli BestScore i ją aktualizować, gdy ten warunek będzie spełniony.

0

Jenny...prosze czytajcie ze zrozumieniem....a moze to nie ja wyrazilem sie jasno....mniejsza o to jak nazwe model...czy BestScore...czy RunnerScore....czy UchoNoga....nie ma to dla mnie znaczenia w tym momencie....

Moje pytanie odnosi sie do atrybutu WYNIK...jak stworzyc modele aby otrzymac format tabeli ?

np.

model Runner pozwala mi tworzyc Biegaczy
model Event pozwala mi tworzyc Wydarzenia
model Team pozwala mi tworzyc Teamy i przypisywac do nich Biegaczy ...

do czego przypisac wynik ? przypisac wynik jako attrybut do ktoregos z modeli ? czy moze stworzyc model EventBiegacz i ten model bedzie mial atrybut wynik a sam model bedzie powiazany m2m z Eventem i Biegaczem ?

tylko jak pozniej updatowac wyniki w jaki sposob ? ale to juz drugie pytanie ...

najpierw skupmy sie na pierwszy powyzszym pytaniu. pzdro.

0

Tak jak mówisz - zrób tabelę EventBiegacz. Nie widzę innego sensownego sposobu.

Podczas update'u musisz pobrać wartość z tej tabeli - jeśli w bazie nie ma jeszcze wyniku lub jest on gorszy od nowego wyniku to zapisujesz nową wartość.
Ewentualnie (tak jak inni sugerowali) zapisywać wszystkie wyniki aby móc zrobić tabelę najlepszych wyników, najgorszych wynik, średnich (arytmetycznych) z wyników na jednych zawodach czy nawet zrobić wykres zmian zachodzących podczas kolejnych startów jednego zawodnika.

Osobna spraw to poradzić sobie z narysowaniem tabeliki takiej jak pokazałeś na stackoverflow. Albo znajdziesz coś gotowego do rysowania takich tabel albo będziesz musiał sam się nad nią trochę pomęczyć ;)

0

Zalozmy, ze stworze sobie ta tabele EventRunner

e.g.

EventRunner Event Runner Wartosc
1Adam 1 Adam 5
1Karol 1 Karol 10
2Adam 2 Adam 7
2Karol 2 Karol 9

Daje mi to np 4 obiekty z modelu EventRunner tak jak w powyzszym przykladzie. Jak zrobic Update kilku obiektow w django ?

0

Update były z grubsza tego typu:

Zamiana wartości na 7 wszystkim obiektom

EventRunner.objects.all().update(Wartosc=7)

Zamiana wartości na 7 wszystkim Adamom

EventRunner.objects.filter(Runner="Adam").update(Wartosc=7)

A tablica to raczej by wyglądała w tym stylu

ID    Event_ID    Runner_ID    Wartosc
 1         1              1                   5
 2         1              2                 10
 3         2              1                   7
 4         2              2                   9
0
furas napisał(a):

Update były z grubsza tego typu:

Zamiana wartości na 7 wszystkim obiektom

EventRunner.objects.all().update(Wartosc=7)

Zamiana wartości na 7 wszystkim Adamom

EventRunner.objects.filter(Runner="Adam").update(Wartosc=7)

A tablica to raczej by wyglądała w tym stylu

ID    Event_ID    Runner_ID    Wartosc
 1         1              1                   5
 2         1              2                 10
 3         2              1                   7
 4         2              2                   9

Hej, dzieki za odpowiedz ale nie do konca mi o to chodzilo. Moim celem nie jest updatowac z ta sama wartoscia wybrane modele tylko wybrac ktore modele chce updatowac, moc wpisac dowolna wartosc np rozna dla roznych obiektow i zapisac ten update w tych modelach.

nie wiem czy sklaniac sie ku formset czy modelformset czy ... ?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.