BadMethodCallException:参数数量错误
BadMethodCallException: Wrong number of parameters
由于我是 Phalcon 框架的新手,我没有找到解决问题的方法。这是我尝试使用的查询:
$withdraws = Withdrawals::query()
->columns('Withdrawals.cashboxId', 'Withdrawals.amount', 'Withdrawals.createdAt', 'Withdrawals.status', 'Withdrawals.serialNo', 'u.firstName', 'u.lastName')
->innerJoin('Shop\Domain\Clients\Models\Clients', 'Withdrawals.userId = u.id', 'u')
->where('Withdrawals.cashboxId = :cashboxId:', ['cashboxId' => $cashboxId])
->andWhere('Withdrawals.status = :status:', ['status' => 1])
->execute();
它给了我 BadMethodCallException: Wrong number of parameters
。我在这里做错了什么?
->columns()
需要一个参数,一个字符串或数组。
试试这个
$withdraws = Withdrawals::query()
->columns(['Withdrawals.cashboxId', 'Withdrawals.amount', 'Withdrawals.createdAt', 'Withdrawals.status', 'Withdrawals.serialNo', 'u.firstName', 'u.lastName'])
->innerJoin('Shop\Domain\Clients\Models\Clients', 'Withdrawals.userId = u.id', 'u')
->where('Withdrawals.cashboxId = :cashboxId:', ['cashboxId' => $cashboxId])
->andWhere('Withdrawals.status = :status:', ['status' => 1])
->execute();
好吧,解决方案是我更改的:
->columns('Withdrawals.cashboxId', 'Withdrawals.amount', 'Withdrawals.createdAt', 'Withdrawals.status', 'Withdrawals.serialNo', 'u.firstName', 'u.lastName')
至
->columns('Shop\Domain\Withdrawals\Models\Withdrawals.cashboxId,
Shop\Domain\Withdrawals\Models\Withdrawals.amount,
Shop\Domain\Withdrawals\Models\Withdrawals.createdAt,
Shop\Domain\Withdrawals\Models\Withdrawals.status,
Shop\Domain\Withdrawals\Models\Withdrawals.serialNo,
u.firstName, u.lastName')
它对我有用。除了接受单个参数的列外,我还必须为 Withdrawals
编写完整路径才能使其正常工作。
由于我是 Phalcon 框架的新手,我没有找到解决问题的方法。这是我尝试使用的查询:
$withdraws = Withdrawals::query()
->columns('Withdrawals.cashboxId', 'Withdrawals.amount', 'Withdrawals.createdAt', 'Withdrawals.status', 'Withdrawals.serialNo', 'u.firstName', 'u.lastName')
->innerJoin('Shop\Domain\Clients\Models\Clients', 'Withdrawals.userId = u.id', 'u')
->where('Withdrawals.cashboxId = :cashboxId:', ['cashboxId' => $cashboxId])
->andWhere('Withdrawals.status = :status:', ['status' => 1])
->execute();
它给了我 BadMethodCallException: Wrong number of parameters
。我在这里做错了什么?
->columns()
需要一个参数,一个字符串或数组。
试试这个
$withdraws = Withdrawals::query()
->columns(['Withdrawals.cashboxId', 'Withdrawals.amount', 'Withdrawals.createdAt', 'Withdrawals.status', 'Withdrawals.serialNo', 'u.firstName', 'u.lastName'])
->innerJoin('Shop\Domain\Clients\Models\Clients', 'Withdrawals.userId = u.id', 'u')
->where('Withdrawals.cashboxId = :cashboxId:', ['cashboxId' => $cashboxId])
->andWhere('Withdrawals.status = :status:', ['status' => 1])
->execute();
好吧,解决方案是我更改的:
->columns('Withdrawals.cashboxId', 'Withdrawals.amount', 'Withdrawals.createdAt', 'Withdrawals.status', 'Withdrawals.serialNo', 'u.firstName', 'u.lastName')
至
->columns('Shop\Domain\Withdrawals\Models\Withdrawals.cashboxId,
Shop\Domain\Withdrawals\Models\Withdrawals.amount,
Shop\Domain\Withdrawals\Models\Withdrawals.createdAt,
Shop\Domain\Withdrawals\Models\Withdrawals.status,
Shop\Domain\Withdrawals\Models\Withdrawals.serialNo,
u.firstName, u.lastName')
它对我有用。除了接受单个参数的列外,我还必须为 Withdrawals
编写完整路径才能使其正常工作。