Ranglisten berechnen // Wie Nodes aufbauen/verknüpfen?
Eingetragen von r4s6 (1383)
am 23.10.2008 - 14:11 Uhr in
am 23.10.2008 - 14:11 Uhr in
Hallo Community
Ich habe da wohl einen Knopf in der Leitung.
- Voraussetzungen:
- Mehrere Wettkämpfe
- Mehrere Teilnehmer
- Jeder Teilnehmer erreicht eine Bestimmte Punktzahl in einem Wettkampf
- Die Teilnehmer treten nicht direkt gegeneinander an (also kein VS-Modus
- Was will ich?
- Ranglisten für Wetkämpfe
- Listen für jeden Teilnehmer mit erreichter Punktzahl je Wettkampf
- (Berechnung einer Gesammt-Rangliste)
Ich möchte dabei die Nodes so aufbauen, dass ich keine retundanten Daten habe.
D.h. für ein Resultat gibt es 3 Felder
- [Wettkampf] => BV zum NodeTyp Wettkampf
- [Telnehmer] => BV zum NodeTyp Teilnehmer
- [Resultat] => Eingabe (Ganzzahl)
BV=Beitragsverweis
Das ganze sollte doch auch in Drpal mit CCK und VIEWS möglich sein, oder irre ich mich?
In einer normalen rel. DB kann ich das mit 3 Tabellen erschlagen und dann 2 Queries erstellen.
Für die Berechnung der Gesamt-Rangliste muss ich dan wohl VIEWS CALC bemühen.
Ich denke das schaffe ich dann. Aber wie muss ich die Inhaltstypen erstellen, dass ich genannten Verknüpfungen erreiche. Ich stehe völlig auf dem Schlauch.
Bin für jede Hilfe Dankbar.
- Anmelden oder Registrieren um Kommentare zu schreiben
*Push*
am 30.11.2009 - 10:42 Uhr
Obwohl ich das gar nicht gerne tu, erlaube ich mir nach mehr als einem Jahr diesen Beitrag zu pushen. Vielleicht, hat ja mittlerweile jemand eine Idee wie ich das lösen könnte.
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Die Verknüpfung erreichst
am 30.11.2009 - 10:55 Uhr
Die Verknüpfung erreichst du ganz einfach via je einem Node Reference Feld. Du kannst dabei den dadurch referenzierbaren Nodetypen auswählen, oder z.B. die Ausgabe eines View als Liste benutzen. Letzteres kannst du z.B. benutzen um die Auswahl auf die aktuelle Saison zu begrenzen. Die Saison selbst kann man beispielsweise als einfache flache Taxonomie anlegen.
--
mortendk: everytime you use contemplate... Thor is striking down from above with his mighty hammer - crushing and killing a kitten!
webseiter.de
Suchmaschinenoptimierung (SEO) & Drupal
Referenzierung OK, aber die Rechnerei
am 30.11.2009 - 11:41 Uhr
Hallo Alexander
Soweit so gut, das mit der Referenzierung habe ich eigentlich gelöst, ging wohl nicht so klar aus meinem Post hervor.
Mein Problem ist nun folgendes, für die Berechnung einer Gesamt Rangliste, sind unterschiedliche Anzahl Teilnahmen erforderlich je nach Alter, des Teilnehmers. Wenn ein Teilnehmer jetzt mehr Wetkämpfe bestreitet, als er muss, werden die höchsten erzielten Resultate für die Berechnung verwendet. Weiter muss das erziehlte Resultat noch mit einem Faktor nnormalisiert werden, da nicht jeder mit dem selben Sportgerät antritt und nicht jeder Wettkampf die selbe Höchstleitung zulässt.
Nun frage ich mich, ob ich diese Auswertung mit Drupal (natürlich mit einem geeigneten Modul) hinkriege, oder ob ich das weiterhin extern in einem Excel-Sheet berechne.
Ich denke ich habe diesen Beitrag etwas voreilig aus der Versenkung geholt, und nicht genügend gut durchgelesen. Nun die Situation ist folgende:
Teilnehmer- Name
- Vorname
- Alter
Wettkampf- Bezeichnung
- Maximale Punktzahl => Korrekturfaktor
Zulässiges Sportgerät- Bezeichnung (Kategorie)
- Korrekturfaktor
Resultat- Teilnehmer
- verwendetes Sportgerät
- Wettkampf
- Erreichte Punktzahl (=> mit KF 1&2 ergeben sich dann die Wertungspunkte)
wobei kursiv geschriebene Felder jeweils Nodereferenzen sind.
Da ich in Sachen php nicht gerade ein Held bin, bringe ich es wohl kaum hin ein solchen Modul selbst zu erstellen. Bleibt mir dann wohl nur noch der Weg über die Externe Berechnung. *sniff*
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Wage nochmal einen Anlauf
am 12.01.2010 - 16:05 Uhr
Die Umrechnung würde ich wohl noch hinkriegen, wenn ich denn wüsste, wie ich die einzelnen Werte aus der DB hole. Ich denke ich muss dann die Werte auch in eigenen Nodes abspeichern, damit ich sie mit ViewsCalc zu einer Rangliste zusammen führen kann.
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Ranglistenberechnung
am 15.02.2010 - 08:45 Uhr
Hallo Roger,
hast Du Deine Ranglistenberechnung hinbekommen? Wenn ja, kannst Du mir weiterhelfen?
Ich denke, ich habe dasselbe Problem...Ich möchte durch Eingabe von einem aktuellen Meisterschaftsspiel (neuer Node) eine Rangliste berechnen. Die Rangliste soll dann wieder Basis sein für die neu zu erreichenden Punkte...
Wäre Dir super dankbar, wenn Du mir Dein System mal zeigst (wie das mit Reference Node usw. funktioniert)
Grüße Christian
Sorry bin noch nicht soweit.
am 15.02.2010 - 09:35 Uhr
Hallo Roger,
hast Du Deine Ranglistenberechnung hinbekommen? Wenn ja, kannst Du mir weiterhelfen?
Leider noch nicht ganz.
Wäre Dir super dankbar, wenn Du mir Dein System mal zeigst (wie das mit Reference Node usw. funktioniert)
Was genau meinst Du damit?
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Gruss Roger
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen (1. Posting vom Thema) <==> das erleichtert das finden von Lösungen
Liga Manager
am 15.02.2010 - 09:39 Uhr
Eventuell hilft hierbei der "Liga Manager Online" (mal nach suchen.
Ansonsten wüsste ich nicht wirklich, wie man das hinbekommen kann.
Stefan
--
Sei nett zu Deinem Themer!
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Frage
am 15.02.2010 - 11:53 Uhr
Hallo Roger, ich dachte Deine Ranglistenberechnung funktioniert schon, so dass ich mich daran eventuell orientieren kann...
Ich dachte generell, dass es wie folgt funktioniert:
A) Neuen Inhaltstyp (z.B. Meisterschaft) erstellen, über den man die Spiele/Ergebnisse eingibt. Darin die Felder: Team, Punkte für das Spiel (dieses Feld errechnet sich nach aktuellem Tabellenstand --> geht das via Node Reference, View oder keine Ahnung --> das ist der Knackpunkt!!!)
B) Node "Tabelle", die alle Inhaltstypen Meisterschaft beinhaltet und nach Team gruppiert. (muss nach Eingabe von einem Content gemäß A wieder aktualisiert sein...
Weiß da jemand, wie vor allem A zu lösen ist?
Grüße Christian
Ansatz
am 20.05.2010 - 12:49 Uhr
zu a)
um eine Ranglistenberechnung über alle Ergebnisse durchführen zu können müssen diese auch erst irgendwo abgespeichert werden bei dieser Datenstruktur. Ich habe eine ähnliche Problemstellung so gelöst:
Spieler:
Name
Gesamtpunkte (computed field platzhalter)
Turnier:
Datum
Turniername
Ergebnis:
Turnier (nodereference auf Turnier)
Spieler (nodereference auf Spieler)
Punkte
update (computed field)
Das Feld "update" enthält dabei den Code der jeweils alle Ergebnisse in der DB durchsucht für einen bestimmten Spieler und die Summe davon als Gesamtpunkte für den Spieler abspeichert. Nachteil: Der aktuelle Wert wird nicht direkt dazuaddiert. Weis hierfür jemand eine sinnvolle Lösung? Bisher addiere ich ihn manuell aus der aktuellen Node auf das Ergebnis der Datenbankabfrage, was aber beim Bearbeiten eines schon vorhanden Ergebnis logischerweise zu einem fehlerhaften Wert führt.
zu b)
Das dürfte danach ganz einfach mittels einer Views Calc zu realisieren sein.