giocatore - squadra - partita
devo fare un sitarello di un torneo, quindi ho fatto i tipi squadra e giocatori
in giocatori ho fatto un campo con reference nodo alla squadra
ora la cosa più difficile...
nella pagina della partita SQUADRA1-SQUADRA2 = risultato 2-0
ora devo indicare chi ha segnato le reti
quindi
nome golfatti
PIPPO 2
poi nella pagina del giocatore voglio un campo che mi faccia i totali dei suoi gol fatti
impossibile?

Risposte
Ciao, un'idea... Tipi
Ciao, un'idea...
Tipi necessari: giocatore, squadra, partita, goal.
giocatore [node_ref] squadra
partita [node_ref] squadra (casa)
[node_ref] squadra (fuori casa)
goal [node_ref] partita
[user_ref] giocatore
Così hai tanti nodi goal e la possibilità di stabilirne ad esempio il minuto di esecuzione altrimenti:
goal [node_ref] partita
[node_ref] giocatore
[user_ref][integer] numero goal
Con le viste estrai il numero di goal che ti serve, se occorre potresti anche qualcosa come http://drupal.org/project/views_calc e http://drupal.org/project/noderelationships.
perchè mi dici di
perchè mi dici di usare
[user_ref] giocatore
il sito viene gestito solo da una persona.
io il giocatore ho fatto un nodo anche lì.
NO?
Hai ragione, lo correggo
Hai ragione, lo correggo subito: in realtà mentre scrivevo stavo pensando all'entità "giocatore" come ad un utente di sistema.
quindi poi devo usare quei
quindi poi devo usare quei moduli che mi hai dato per far visualizzare i goal totali nella scheda del giocatore?
ecco allora ho fatto 4 tipi
ecco allora ho fatto 4 tipi di contenuto
GIOCATORE:
squadragiocatore [node-ref] squadra
PARTITA:
squadracasa [node-ref] squadra
squadrafuoricasa [node-ref] squadra
GOAL:
goalfatti [node-ref] partita
goalgiocatore [node-ref] giocatore
totgoal [integer]
ma perchè fare anche il tipo goal?
non potevo inserire il tutto nel tipo giocatore?
e mettere i goal nella compilazione della partita?
Con lo schema che ti ho
Con lo schema che ti ho proposto hai tutte le entità ben definite e poi riutilizzarle con le viste in vari modi e/o referenziarle dai vari contenuti.
L'entità GOAL è la traduzione naturale dell'associazione:
[GIOCATORE] -(0,N)- <SEGNA GOAL> -(0,N)- [PARTITA]in un tipo di nodo, cioè un giocatore può segnare 0 o più goal in una partita e in ogni partita possono essere segnate 0 o più reti.
Esempio: se metti i goal all'interno del contenuto giocatore non sai più in che partita li ha fatti.
E' un'idea di realizzazione, ma puoi seguire una strada alternativa che ti sembra più opportuna.
insomma.. è un po' dura
insomma.. è un po' dura creare un sistema per
creare la partita, poi a fine partita inserire chi ha segnato in quella partita e visualizzare
1) una lista con i punteggi delle squadre: "partite vinte, perse, pareggiate
2) nel nodo giocatore vedere il totale di reti che ha segnato nel torneo
ho trovato il modulo LeagueSite, solo che è un poco incasinato e non ha le reti dei giocatori
:_(
LeagueSite è troppo complesso
LeagueSite è troppo complesso per metterci le mani...
mi aiuteresti ad impostare un modo per
avere
SQUADRE, GIOCATORI, PARTITE
nei GIOCATORI inserire la squadra di appartenenza ( e questo è fatto in base ai precedenti post)
poi nelle PARTITE poter inserire il risultato e chi ha segnato
cosi da avere poi una CLASSIFICA con i punteggi PUNTI (totale delle vittorie e pareggi :3+1) e anche dei GOAL FATTI e SUBITI
e poi nella scheda del GIOCATORE avere il totale dei GOAL che ha fatto.
è impossibile? senza scrivere un modulo e codice?
Ciao, sicuramente sarebbe un
Ciao, sicuramente sarebbe un bel moduletto da implementare. Viste le nuove specifiche, non credo però tu riesca a fare tutto senza scrivere codice.
Se trovi qualche modulo o sistema comunque postalo, può essere utile a chi avrà una necessità simile.
infatti.. sto cominciando a
infatti.. sto cominciando a scrivere un modulino.
per ora ho fatto una tabella nel DB manualmente con i campi
nid_partita
nid_squadra_casa
nid_squadra_fuoricasa
punti_casa
punti_fuoricasa
ho fatto un hook_nodeapi cosi che quando viene salvato il tipo squadra mi fa le 3 alternative: se ha vinto la squadra in casa, fuoricasa oppure pareggiato
e quindi mette 3,0 o 1 nei punti, facendo un update o insert.
il mio problema ora è: come visualizzare con views questi dati che stanno su una tabell che non ho fatto con drupal?
e poi come recuperare facendo una classifica facendo le somme dei punti in base alla squadra
difficile vero?
Devi implementare
Devi implementare l'integrazione di views nel tuo modulo. La base di partenza è capire come funzionano hook_views_api (serve a far capire al sistema che il tuo modulo è integrato con Views -> http://drupalcontrib.org/api/drupal/contributions--views--docs--docs.php...) e hook_views_data (serve a fare capire a Views come utilizzare i dati forniti dal tuo modulo -> http://drupalcontrib.org/api/drupal/contributions--views--docs--docs.php...).
ho usato hook_views_data per
ho usato hook_views_data per vedere i campi fatti nella tabella PUNTI... e me li vede... solo che facendo una vista di tipo PUNTI... non vedo tutti gli altri campi fatti nei nodi
forse era meglio creare un content-type: punti dove avere questi campi
nid_partita
nid_squadra_casa
nid_squadra_fuoricasa
punti_casa
punti_fuoricasa
cosi poi da poter in views utilizzare tutte le relazioni.
ma come creare un contenuto PUNTI una volta che viene salvato un contenuto partita?
prima con la tabella creata da me usavo questa query:
$query = "INSERT INTO {punti} (punti_casa, punti_fcasa, nid_casa, nid_fcasa, goal_casa, goal_fcasa, nid_partita) VALUES (%d, %d,%d, %d, %d, %d, %d)";
anzi ora che ho scritto tutto ciò. mi viene in mente che potrei mettere questi campi nel content-type: PARTITA che c'è ed è dove metto il risultato... alla fine ci metto con il mio modulino (_nodeapi) mi aggiungo solo :
punti_casa
punti_fuoricasa
e li compongo con un update
che ne dici?