Apigility - POST to Entity - 如何获取ID值?

时间:2016-02-26 19:13:12

标签: php zend-framework2 apigility

我正在使用Apigility构建API。我想允许POST到一个Collection(用于创建一个新的未命名实体),到一个Entity(用于创建一个新的命名实体)。

Apigility的资源类,'创建'方法在POST上调用Collection或Entity,并且只接收一个'数据'参数,即POSTed有效负载。没有' id'参数,因为该方法通常仅针对集合调用。

如果在实体上调用 - 即,如果' id'值在URI中提供 - 我如何知道提供的ID值?

由于

1 个答案:

答案 0 :(得分:1)

YES!我弄清楚了:

public function create($data)
{
    return array('id' => 
        $this->getEvent()->getRouteMatch()->getParam('dataset_id'));
}

POST http://localhost/dataset/xyz123

(回复)=>

{
    "id": "xyz123",
    ...
}

POST http://localhost/dataset

(回复)=>

{
    "id": null,
    ...
}