【问题标题】:Symfony2 create Entity from RequestSymfony2 从请求创建实体
【发布时间】:2014-01-08 14:05:03
【问题描述】:

我在想,是否有一种简单的方法可以从请求对象中填充学说实体。我正在使用 fos/rest-bundle 构建一个 RESTful API,所以我不需要表单。

你知道一个很好的方法来做到这一点吗?以非常简单和简短的方式?

// POST /api/products
public function postProductsAction(Request $request)
{
    $product = new Product(); 
}

此外,我想知道是否可以通过发布请求直接在控制器中注入实体实例。

// PUT /api/product/1
// I need this functionality for post requests too
public function putProductAction(Product $product)
{
    return $product; // { "id" : "1", "name" : "foo" } 
} 

您好,

--马克

【问题讨论】:

    标签: api rest symfony doctrine entity


    【解决方案1】:

    您需要的是每个 REST API 最常见的目标。最好的方法是在表单之外使用序列化程序(即使您更愿意不使用表单)。

    我建议您阅读例如this tutorial writen by William Durand。它很好地解释了每一点,并使用JMSSerializerBundle通过API转换实体。

    【讨论】:

    • 我知道这是一篇旧帖子,但我想向通过搜索到达这里的人澄清这一点。在您提到的教程中,表单仍用于将请求转换为实体/验证。序列化仅用于相反的方式:实体到响应。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多