backbone.js zend-framework2 http-put

backbone.js - PHP ZF2-Controlador relajante Backbone PUT método de análisis incorrecto



zend-framework2 http-put (1)

Tengo un problema con mi aplicación basada en ZF2 y Backbone en la interfaz. En alguna parte en la parte delantera, corro

this.model.save({ city_id: parseInt( this.$el.find( ''#city_id'' ).val() ), from: this.$el.find( ''#from'' ).val(), to: this.$el.find( ''#to'' ).val(), price: parseInt( this.$el.find( ''#price'' ).val() ) });

Enciendo mi sniffer de Chrome y veo los detalles de la solicitud:

PUT /account/trip/2 HTTP/1.1 Host: jamydays.ru Connection: keep-alive Content-Length: 186 Accept: application/json, text/javascript, */*; q=0.01 Origin: http://jamydays.ru X-Requested-With: XMLHttpRequest User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31 Content-Type: application/json Referer: http://jamydays.ru/account Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 Cookie: PHPSESSID=pekjbefmi1jn01q5fgm4gu6jk0; _ym_visorc=w

Y la carga útil de solicitud es:

{"from_formatted":"10 маÑ","to_formatted":"19 маÑ","url":"/account/trip","id":2,"city_id":65170,"city":"Baardheere","from":"10-05-2013","to":"19-05-2013","price":500,"is_active":1}

El controlador utilizado para manejar esta solicitud ejecuta la acción adecuada:

class TripController extends AbstractRestfulController{ ... public function update( $id, $data ){ var_dump( $id, $data );exit(); } ... }

Mi problema es que veo en resultado esto:

string(1) "2" array(1) { ["{"from_formatted":"10_мая","to_formatted":"19_мая","url":"/account/trip","id":2,"city_id":65170,"city":"Baardheere","from":"10-05-2013","to":"19-05-2013","price":500,"is_active":1}"]=> string(0) "" }

Aquí vemos que id es analizado correctamente, pero todos los datos caen en la clave de una matriz extraña. Ahora estoy recuperando datos de esta clave, pero creo que esta es una mala manera. ¿Alguien podría ayudarme a descubrir cómo hacer que los datos de análisis de los controladores sean apropiados?

ACTUALIZAR

Bueno, parece que la solución es solo actualizar ZF2 a la versión 2.2 estable.


La pregunta está resuelta. Si enfrenta el mismo problema simplemente actualice su ZF2 a 2.2 versión estable o posterior.