我尝试将我的变量传递给表单验证器中的约束,但不能。我正在这样做:
$payForm = $this->createForm(new CableTVPayType(), null, array('balance' => $balance));
在 CableTVPayType 中:
public function getDefaultOptions(array $options)
{
$maxSumm = $options['balance'] - 100;
[...]
它工作正常,我的 maxSumm 是我想要的,但 Symfiony 会检查 $options 数组。'balance' 不是默认选项,并抱怨这一点:
The option "balance" does not exist
是否有另一种更正确的方法将自定义变量传递给验证?