Estoy desarrollando una aplicación backbone, que hace que la solicitud de dominio entre dominios sea amplia. se requiere la estructura de datos anidada en la solicitud, en la solicitud de rizo tengo esa estructura:Modelo de backbone: estructura de datos anidados
{
"site_id": 1,
"post": {
"site_id": 1,
"provider_id": 1,
"provider_post_id":1,
"created_ts": "12.12.12",
"post": {
"header": "text",
"caption": "text",
"image": "http://...jpg"
}
}
}
En el modelo no he anidado estructura y esto es bastante cómodo, porque uso image
campo de modelo en la view
(DOM creación de elementos).
¿Cuál es la forma correcta de enviar datos anidados al servidor desde la aplicación Backbone?
Modelo:
var WraperModel = Backbone.Model.extend({
url: 'http://mydomain/core/api/v1/bookmarklet_post/? callback=?',
defaults: {
site_id: 1, // shouldn't be hardcoded
type:"type", site_id:2, provider_id: 2, provider_post_id: 2, created_ts:2,
header : '',
caption: '',
image: ''
},
});
La parte de vista, que utilizan image
propiedad del modelo:
drawItem: function (model) {
var inst = new ImageView({model: model, tagName: 'li', className:'images-item'}).render();
this.imagesWrapper.append(inst.el);
},
getImages: function() {
var images = doc.getElementsByTagName('img'),
view = this;
_.each(images, function (image) {
image.offsetHeight > 75
&& image.offsetWidth > 75 &&
view.collection.add({image: image.src});
});
},
La parte de otro punto de vista, que envían datos al servidor.
sendTo: function(){
var that = this,
data = {saving: true};
$('#add-header').val() && (data.header = $('#add-header').val());
$('#add-description').val() && (data.caption = $('#add-description').val());
this.model.set(data);
this.model.save();
}
¡Buena solución! Me procesaron los datos en el lado del servidor, en este momento. – I159