简体   繁体   English

如何在Symfony3中初始化JMS Serializer?

[英]How to Initialize JMS Serializer in Symfony3?

I am trying to use the JMSSerializerBundle for Symfony3 (which just came out). 我正在尝试使用JMSSerializerBundle for Symfony3(刚出来)。

These are the namespaces I've loaded in my TestController.php 这些是我在TestController.php加载的命名空间

use JMS\\Serializer\\Serializer; use JMS\\Serializer\\SerializerBuilder; use JMS\\Serializer\\SerializationContext;

I've tried $data = $this->get('jms_serializer')->serialize($data, 'json'); 我试过$data = $this->get('jms_serializer')->serialize($data, 'json'); where $data is just a simple object, but get the following error: 其中$data只是一个简单的对象,但是得到以下错误:

Attempted to call an undefined method named "get" of class "AppBundle\\Controller\\TestController"

I've also tried a usage example from the site $serializer = $container->get('jms_serializer'); 我也尝试过网站$serializer = $container->get('jms_serializer');一个用法示例$serializer = $container->get('jms_serializer'); , but get Notice: Undefined variable: container ,但得到Notice: Undefined variable: container

I am still new to Symfony3 and its bundles, and can't seem to find any documention on JMS Serializer for symfony 3 我还是Symfony3及其捆绑包的新手,似乎无法在symfony 3的JMS Serializer上找到任何文档

I can initialize it like this $serializer = SerializerBuilder::create()->build(); 我可以像这样初始化$serializer = SerializerBuilder::create()->build(); which allows me to call the serialize method, but I would like to know the correct "symfony way" of doing it. 这允许我调用serialize方法,但我想知道这样做的正确“symfony方式”。

If anyone can shed some knowledge, that would be great. 如果有人能够提供一些知识,那就太棒了。 Thanks! 谢谢!

in order to use container in your controller, your controller must extend Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller or at least use Symfony\\Component\\DependencyInjection\\ContainerAware, 为了在控制器中使用容器,您的控制器必须扩展Symfony \\ Bundle \\ FrameworkBundle \\ Controller \\ Controller或至少使用Symfony \\ Component \\ DependencyInjection \\ ContainerAware,

anyway if you want to start developing in Symfony I suggest you to start reading error messages, in this specific case your errors are very clear. 无论如何你想在Symfony开始开发我建议你开始阅读错误信息,在这种特殊情况下你的错误是非常明确的。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM