template - El método de recuperación de Backbone.js con la opción de datos es pasar parámetros de URL con corchetes
underscore js que es (1)
Backbone usa jQuery.ajax bajo el capó para la solicitud de ajax, por lo que debe usar las opciones traditional: true
para usar la serialización de parámetros "tradicionales":
fruits = new FruitsCollection();
fruits.fetch({
traditional: true,
data: {color: [''red'', ''green'']}
});
Tengo el siguiente código para buscar los datos de mi colección, pero con especificar qué colores deberían venir del servidor:
fruits = new FruitsCollection();
fruits.fetch({
data: {color: [''red'', ''green'']}
});
Esto es lo que espero:
http://localhost:8000/api/fruits/?color=red&color=green
Esto es lo que conseguí:
http://localhost:8000/api/fruits/?color[]=red&color[]=green
Como puede ver, por alguna razón desconocida Backbone.js está agregando los corchetes a los parámetros de URL, en lugar de tener color=green
tengo color[]=green
Estoy usando django-rest-framework en el lado del servidor y sé que puedo hacer una corrección codificada allí, pero prefiero saber la razón lógica porque está sucediendo y cómo puedo resolverlo desde mi javascript.