backbone.js - source - buscar en el modelo de red troncal con identificación
underscore js download (2)
Eche un vistazo aquí, explica perfectamente cuál es una de las mejores soluciones para buscar modelos individuales.
usaría una función para armar la url, como una propiedad modelo. usando .isNew()
al menos así es como lo he estado haciendo por un tiempo, creo que es mejor que crear un url en la búsqueda cada vez que necesites algo.
Tengo una lista de elementos y al hacer clic en ellos se deben mostrar los detalles del usuario (otra vista). En mi enrutador tengo una ruta para esto:
''details/:id'' : ''details'',
Ahora, en la función de detalles, debería buscar mi objeto (la obtención activará una nueva visualización de vista). Pero, ¿qué debo hacer para que el backbone adjunte la identificación del elemento a model.url? 2 formas que tengo por ahora es:
Crear url sobre la marcha al buscar:
this.realty_object.fetch({url: SITE_PATH + ''blah/blah/'' + id});
Y algo como esto:
this.realty_object
.set({id : id}, {silent: true})
.fetch();
Pero tengo dudas de que se trata de soluciones correctas. ¿Como debería ser? ¿Cuál es la diferencia entre model.urlRoot y model.url ()?
La respuesta correcta es usar la propiedad urlRoot del modelo. Si está configurado, la identificación de los modelos se adjuntará a esta url mientras se recupera. Por lo tanto, puede parecer esto (los objetos tienen nombres diferentes a los de mi primera publicación, pero la idea es la misma: buscar modelo único por ID):
Group = Backbone.Model.extend({
urlRoot: SITE_PATH + ''group/index'',
});
Y en ruta:
this.group = new Group({id: id});
this.group.fetch();