0

私はコントローラーを持っています:

class MyController extends AbstractRestfulController{

    protected $myTable;

    public function getList(){
        $results = $this->getMyTable()->fetchAll();
        $data = array();
        foreach($results as $result) {
            $data[] = $result;
        }
        return new JsonModel(array(
            'data' => $data
        ));
    }

[...]

そして私はチェックします:

 curl -i -H "Accept: application/json" http://localhost/myapp/restroute -X GET

そしてそれは大丈夫です。しかし、このメソッドに追加のデータを送信したいと思います。たとえば、次のようになります。

 curl -i -H "Accept: application/json" http://localhost/myapp/restroute -X GET -d "name=john"

getList()メソッドでこのデータを読み取る方法は?

create($ data)メソッドを使用することはできますが、どういうわけか私には合いません(createメソッドは作成用などです)。たとえば、$_GETの変数によって制限されているオブジェクトのタイプのリストを取得したいと思います。

4

1 に答える 1

3

内には、あなたがやろうとしていることに理想的なAbstractRestfulControllerヘルパーメソッドがあります。processBodyContent

public function getList()
{
    $content = $this->processBodyContent($this->getRequest());
    $name = array_key_exists('name', $content) ? $content['name'] : '';

    // ...
}

GET思考を使用しているので、次のことを検討する必要があります。

 curl -i -H "Accept: application/json" http://localhost/myapp/restroute?name=john -X GET

getList()次に、次のように取得できます。

public function getList()
{
    $name = $this->params()->fromQuery('name');

    // ...
}
于 2013-03-08T07:43:23.257 に答える