Views2: Filtro dinamico

17 contenuti / 0 new
Ultimo contenuto
Views2: Filtro dinamico

Vorrei in una Vista impostare un filtro dinamico che come valore ha il nome utente loggato.

qualcuno puo' darmi una mano?

Grazie anticipatamente!

filtro dinamico = argomento

dovresti usare un argomento userID e forzarlo con "Provide default argument:User ID from logged in user"

ok ma poi per impostare il valore del filtro?

hehe
ma se è dinamico!
il valore del filtro è l'UID dell'utente loggato

allora io vorrei ottenere una cosa come descritta in: http://drupal.org/node/70145

in particolare dove spiega "Setting Dynamic Filters".

ma non mi riesce. mi potresti essere d'aiuto.

questa pero' mi sembra una guida per views per drupal 5.

non ti seguo.
in più non sono in grado di spiegarti quella roba, sorry

Scialo, prova a descrivere meglio cosa devi fare.

allora ho creato una vista e fin qui tutto ok.
nella vista ho un campo che e' inizia con il nome utente es.: nomeutente_restodelcampo.
ora nella vista voglio impostare un filtro che deve prendere tutti i campi che iniziano con il nome utente loggato.

impostando un filtro manuale nn mi da la possibilita' di mettere come valore una variabile quindi avrei bisogno di settare il valore del filtro nell'atto in cui la vista viene eseguita..

spero di essermi spiegato.

Bizzarro. Vuol dire che se hai 100 utenti, ci sono 100 campi diversi?
Se i nomi utenti non sono un numero predefinito, la vedo un po' grigia. Altrimenti, imposti un argomento per ognuno dei numi utenti disponibili e lo manipoli con PHP.

grazie per la tua disponibilita' pinolo.
cerco di essere piu' chiaro ancora.

allora io come modulo uso webfm ed ho la possibilita' di creare una vista per questo modulo.
webfm ha un campo che si chiama webfm_fname che in esso vengono memorizzati i nomi dei file.
ora i file che io uppo sono nominati per esempio 00001_file1.ext 00223_file1.ext ecc. che vengono generati da un gestionale.

il sito che gestisco non ha registrazione libera e gli utenti che creo li creo con nome utente uguale al codice che ho nel gestionale.

ora il mio intento e' che nella vista vengano visualizzati solo i file dell'utente loggato quindi tutti quei file che come nome iniziano per nomeutente.

cerco di avere una coa automatica che il mio solo fastidio sara' di uploadare i file tramite ftp e poi tramite funzione di webfm carcarli nel database.

capito adesso?

grazie ancora

Non ho mai usato webfm in questo modo. Se esiste una tabella con il nome file, non è che per caso in quella tabella c'è anche lo userid di chi ha caricato?

si c'e'.
ma poi come id utente risulterei sempre io che li uppo.

in modalità "Glossary" in una view puoi impostare di filtrare in base a n caratteri del campo su cui fai il filtro. Se hai tutti gli username della stessa lunghezza, dovresti poter filtrare in base agli n caratteri della loro lunghezza fissa.

io proverei a smanettare con l'input in php dell'argomento o del suo validatore.
magari con poche regex o funzioni di stringa riesci a validare l'argomento o a forzarlo nel modo corretto...

e poi puoi sempre leggere i dati direttamente dal db...

@bohz: potresti farmi un esempio oppure indicarmi dove trovarlo?

se usi il nome del file come argomento puoi scrivere un po' di codice php per "provide default argument" -> "PHP code".
in questo codice inserirei la logica per estrarre il nome utente dal nome del file e restituirla come argomento alla vista.
tanto per dire, assumendo che il nome del file sia "00223_file1.ext" e che il nome utente sia "00223"
il tuo codice dovrebbe
- caricare il nodo
- recuperare il campo file e quindi il nome del file dal nodo
- modificarlo in modo da estrarre i primi 5 caratteri
- restituirlo come argomento UID

una cosa analoga si può fare a livello del codice di validazione dell'argomento
per maggiori info sugli argomenti in views:
http://mustardseedmedia.com/podcast/episode39
http://drupal.org/node/54455
http://drupaleasy.com/blogs/ryanprice/2008/06/using-views-2-drupal-6-cre...
drupal.org
google

ok ;).

grazie tanto per la vs disponibilita'