Siguiendo la documentación , hice:
var collection = new Backbone.Collection.extend({
model: ItemModel,
url: '/Items'
})
collection.fetch({ data: { page: 1} });
la url resultó ser: http://localhost:1273/Items?[object%20Object]
Esperaba algo como http://localhost:1273/Items?page=1
Entonces, ¿cómo paso parámetros en el método fetch?
javascript
backbone.js
Shawn Mclean
fuente
fuente
JSON.stringify({ data: { page: 1} })
?collection.fetch(JSON.stringify({ data: { page: 1} }));
y no se pasó nada en la url.Respuestas:
cambiando:
a:
Entonces, sin hacerlo, esto se llama con su
{data: {page:1}}
objeto comooptions
Por lo tanto, envía los 'datos' a jQuery.ajax, que hará todo lo posible para agregar lo que
params.data
sea a la URL.fuente
También puede establecer processData en true:
Jquery procesará automáticamente el objeto de datos en una cadena param,
pero en la función Backbone.sync, Backbone apaga el processData porque Backbone usará otro método para procesar datos en POST, UPDATE ...
en la fuente Backbone:
fuente
Otro ejemplo si está utilizando aleación de titanio:
fuente
fuente