2012-01-24 19 views
5

Backbone.js realiza una solicitud POST cuando se crea y se guarda un nuevo modelo, pero no considera que se guarde el modelo (es decir, los resultados posteriores guardan en PUT no POST) hasta que el modelo tenga una identificación ... ¿cómo debería el servidor devolver la ID de un modelo recién creado para que backbone.js pueda configurarlo (es decir, cómo debería responder al POST inicial)?ID para un modelo backbone.js recientemente guardado

Si backbone.js no se encarga de eso, supongo que la mejor manera de hacerlo es utilizando el controlador de éxito para establecer la ID?

Respuesta

9

Tiene dos opciones. La primera es devolver la misma estructura JSON para una solicitud POST que una solicitud GET para la acción mostrar (devolver un solo elemento). Esto utiliza una sola solicitud.

Desde el documentation:

conjunto A hash del modelo de atributos, y sincronizar el modelo con el servidor. Si el servidor devuelve un hash de atributos que difiere, el estado del modelo se establecerá de nuevo.

La otra opción es activar una búsqueda en su colección después de guardar. Sin embargo, esto requerirá más de 1 solicitud y siempre será menos eficiente.

+0

Solo para estar seguro, ¿está diciendo que si devuelvo un modelo completamente formado con una ID como respuesta al POST inicial, backbone.js cambiará los atributos del modelo guardado a los atributos devueltos? ¿Estás seguro? –

+0

@ KimSun-wu Vea el enlace en mis ediciones. – Gazler

+0

Esta respuesta no tiene sentido gramatical -1 – reach4thelasers

Cuestiones relacionadas