2011-12-08 14 views
5

Estoy usando Backbone.js y tengo una url en mi colección seguida de una cadena de parámetros: los parámetros pueden ocurrir en cualquier orden, el número de parámetros puede variar.Parámetros de URL de análisis con enrutadores Backbone - ejemplos de expresiones regulares

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

mywebsite.com/?author=Smith & type = Horror, Romance

Así que en cierto modo el /: param no es lo ideal, a menos que definir un orden en el que tienen que estar en la url:

/: orderBy /: autor /: tipo ...

y permiten que algunos de ellos sean nulos de alguna manera.

¿Cuál es la mejor manera de configurar esto? ¿Respondería un enrutador con expresiones regulares a mis problemas? Si es así, no puedo encontrar ejemplos de un enrutador que use expresiones regulares para pasar múltiples argumentos a una función de enrutamiento en Backbone.

Gracias!

+1

Quizás esta respuesta va a funcionar para usted también: http://stackoverflow.com/questions/7445353/key-value-pair-params-handling-in-backbone-js-router – ProTom

+1

Debe aceptar algunas de las respuestas a tus preguntas. – ripper234

Respuesta

4

No creo que los parámetros de su url deban correlacionar las cadenas de consulta de forma similar a cómo las interfaces restFul no mapean las cadenas de consulta.

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

Entiendo que el resto no es una ruta de aplicaciones, pero todavía tienen las mismas advertencias.

jQuery contiene una función $.param para que sea fácil tratar con cadenas de consulta y jQuery barbacoa contiene una util $.deparam que puede analizar cadenas de consulta

Mantenga sus rutas simplemente

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