选择的ZF2 tablegateway显示错误"未知列"

时间:2015-02-20 13:51:51

标签: zend-framework2

标题说。 它说我没有columnd'user_id',但我有。它适用于'id'。

这是问题功能:

public function getUploadsByUserId($userId)
{
    $userId = (int) $userId;
    $rowset = $this->tableGateway->select(
        array('user_id' => $userId));


    return $rowset;
}

这是模型:

namespace Users\Model;

use Zend\View\Model\ConsoleModel;

class Upload
{
public $id;
public $filename;
public $label;
public $user_id;


public function getArrayCopy()
{
    return get_object_vars($this);
}

function exchangeArray($data)
{
    $this->id = (isset($data['id'])) ? $data['id'] : null;
    $this->filename = (isset($data['filename'])) ? $data['filename'] : null;
    $this->label = (isset($data['label'])) ? $data['label'] : null;
    $this->user_id = (isset($data['user_id'])) ? $data['user_id'] : null;

}
}

这里可能出现问题,显然我有这样的专栏。

1 个答案:

答案 0 :(得分:0)

问题是我没有正确配置tablegateway。它是'用户'而不是'上传'。

 'UploadTableGateway' => function ($sm) {
                    $dbAdapter = $sm->get('Zend\Db\Adapter\Adapter');
                    $resultSetPrototype = new ResultSet();
                    $resultSetPrototype->setArrayObjectPrototype(new Upload());

                    return new TableGateway('uploads', $dbAdapter, null,
                        $resultSetPrototype);
                },