2011-12-08 8 views
5

Sto usando Backbone.js e ho un url alla mia collezione seguito da una stringa param - i param possono verificarsi in qualsiasi ordine, il numero di parametri può variare.Parametri url di analisi con router backbone - esempi di espressioni regolari

mywebsite.com/?orderBy=recent & autore = Smith

mywebsite.com/?author=Smith & type = Orrore, Romanticismo

Quindi, in un modo in cui il /: param non è l'ideale se non ho definire un ordine che essi devono essere in nella url:

/: orderBy /: autore /: tipo ...

e consentire ad alcuni di loro di essere null in qualche modo.

Qual è il modo migliore per configurarlo? Un router con regex risponderà ai miei problemi? In tal caso, non riesco a trovare esempi di un router che utilizza regex per passare più argomenti a una funzione di routing in Backbone.

Grazie!

+1

Forse questa risposta funzionerà per voi pure: http://stackoverflow.com/questions/7445353/key-value-pair-params-handling-in-backbone-js-router – ProTom

+1

Dovreste accettare alcune delle risposte alle tue domande. – ripper234

risposta

4

Non credo che i parametri dell'URL debbano mappare le stringhe di query in modo molto simile a come le interfacce restFul non mappano le stringhe di query.

/cars?filterby=12 would be more correct then some sort of /cars/filterby/12 

Capisco che il riposo non è un percorso di applicazioni ma hanno ancora gli stessi avvertimenti.

jQuery contiene una funzione per $.param facilmente trattare con querystrings e jQuery barbecue contiene un util $.deparam che può analizzare querystrings

Tenere le rotte semplicemente

mywebsite.com/#/authors?orderBy=recent....