我正在用Symfony2创建一个购物网站,看来我犯了一个错误。它的首页现在返回500内部服务器错误。
我跟踪并发现normToView($value)
中的/vendor/symfony/form/Form.php/
函数在处理“数量”字段的值1时失败。
此行似乎停滞了。
$value = $transformer->transform($value);
当我注释掉这一行时,至少我可以看到没有500个内部服务器错误的首页。
我不知道如何以及在哪里可以检查此$ transformer-> transform()行为。我也想知道为什么这行开始卡住值1。
任何建议都值得欢迎。预先感谢。
我发现数量形式的“数据”选项导致失败。当我注释掉“数据”选项行时,将抑制500个服务器错误。
$builder
->add('quantity', 'integer', array(
// 'data' => 0,
'attr' => array(
'min' => 0,
'maxlength' => $app['config']['int_len'],
),
'constraints' => array(
new Assert\NotBlank(),
new Assert\GreaterThanOrEqual(array(
'value' => 0,
)),
new Assert\Regex(array('pattern' => '/^\d+$/')),
),
))
;
我不知道为什么突然开始卡住了。
我又发现了一个新的500错误。这次,“出生”表单卡在FormFactory :: createNamedBuilder。
->add('birth', 'birthday', array(
'required' => false,
'input' => 'datetime',
'years' => range(date('Y'), date('Y') - $this->config['birth_max']),
'widget' => 'choice',
'format' => 'yyyy/MM/dd',
'empty_value' => array('year' => '----', 'month' => '--', 'day' => '--'),
'constraints' => array(
new Assert\LessThanOrEqual(array(
'value' => date('Y-m-d'),
'message' => 'form.type.select.selectisfuturedate',
)),
),
))
我几乎找不到这两种表单类型之间的常见问题。...
我的上级检查了服务器日志。这些错误之一已记录。
End of script output before headers: index_dev.php
AH01630: client denied by server configuration/home/user_name/www/.ht, referer: https://user_name.hostname.ne.jp/index_dev.php/products/detail/1