¿Cómo le digo a mi aplicación de bailarina que serialice objetos en su caché?
Frecuentes
Visto 856 veces
1
Estoy usando una interfaz CHI para memcached (o File in devel) en mi aplicación Dancer, pero recibo un error en el serializador cuando guardo un objeto en caché. Tengo lo siguiente en mi configuración de bailarín:
engines:
JSON:
allow_blessed: 1
convert_blessed: 1
¿Qué más necesito?
Error message:
Error while loading bin/app.pl: encountered object 'C3M::CMF=HASH(0x3ef8aa8)', but neither allow_blessed nor convert_blessed settings are enabled at /usr/lib/perl5/site_perl/5.10/CHI/Serializer/JSON.pm line 19.
1 Respuestas
0
CHI::Serializer::JSON no usa el mismo serializador que Dancer::Serializer::JSON. Dancer::Serializer::JSON usa la configuración ('motores') en config.yml, pero no hay forma de enviar opciones de configuración a CHI::Serializer::JSON.
solución alternativa:
use CHI::Serializer::JSON;
my $JSON = JSON->new->utf8->canonical;
$JSON->allow_blessed(1);
$JSON->convert_blessed(1);
*CHI::Serializer::JSON::serialize = sub { $JSON->encode( $_[1] ) };
*CHI::Serializer::JSON::deserialize = sub { $JSON->decode( $_[1] ) };
contestado el 04 de mayo de 12 a las 08:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas json perl memcached dancer or haz tu propia pregunta.
#dancer
solicita aclaración: "Es posible que haya puesto la clave de configuración en el lugar equivocado, aunque es imposible saberlo con esa poca información". - daximNo entiendo esto
/usr/lib/python5/site_python/5.10/CHI/Serializer/JSON.pm
- Sinan ÜnürAcabo de votar para cerrar esto como "no es una pregunta real". Si se te ocurre una explicación razonable de
/usr/lib/python5/site_python/5.10/CHI/Serializer/JSON.pm
, nadie más estará de acuerdo y probablemente obtendrás una respuesta. Sin embargo, en este momento, hay demasiadas incógnitas y factores de confusión. - Sinan Ünürsí, supongo que eso necesita una explicación... Tengo un script de greasemonkey que cambia de perl a python en el contenido html, una especie de broma... No lo he visto cambiarlo en los cuadros de entrada antes, tal vez stackoverflow en realidad usa el contenido durante el envío. - Chinthamani
Además de la clave JSON en los motores, tengo una clave template_toolkit: que funciona como se esperaba (cambiando las etiquetas de inicio/detención). - Chinthamani