- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Symfony 标准版 ,一切都在 的版本中工作Symfony2.X 直到我将其更新为 3.0.x-dev .
即使在较新的版本中,除了在 Controller 中给我一个错误的页面外,一切正常:
Could not load type "text" 500 Internal Server Error - InvalidArgumentException
- in vendor/symfony/symfony/src/Symfony/Component/Form/FormRegistry.php at line 91
- at FormRegistry ->getType ('text') in vendor/symfony/symfony/src/Symfony/Component/Form/FormFactory.php at line 84
- at FormFactory ->createNamedBuilder ('flag', 'text', null, array()) in vendor/symfony/symfony/src/Symfony/Component/Form/FormBuilder.php at line 106
- at FormBuilder ->create ('flag', 'text', array()) in vendor/symfony/symfony/src/Symfony/Component/Form/FormBuilder.php at line 267
- at FormBuilder ->resolveChildren () in vendor/symfony/symfony/src/Symfony/Component/Form/FormBuilder.php at line 215
- at FormBuilder ->getForm () in src/MyProject/FrontOfficeBundle/Controller/ChallengeController.php at line 418
$form = $this->createFormBuilder()
->add("flag","text")
->add("validate","button")
->getForm();
Could not load type "button"
getForm()
.我认为该方法
createFormBuilder()
需要一个参数,所以我试图传递一个对象标志,它有很多参数(标志,验证,...)。
composer update
最佳答案
@CarlosGranados 的意思 read the UPGRADE-3.0.md
是阅读告诉您如何将代码从 2.x 更改为 3.0 而不是如何升级 symfony 代码库的文件。不幸的是,它没有提到如何处理这个表单问题。
您将面临的问题包含在 [UPGRADE-2.8.md](https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md)
中。并且是由于表单名称 text
/button
被弃用,取而代之的是完全限定的类名 (FQCN)。
来自 UPGRADE-2.8.md
类型名称已被弃用,并将在 Symfony 3.0 中删除。您应该通过完全限定的类名 (FQCN) 来引用它们,而不是通过名称来引用类型。在 PHP 5.5 或更高版本中,您可以为此使用“类”常量:
之前:
$form = $this->createFormBuilder()
->add('name', 'text')
->add('age', 'integer')
->getForm();
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
$form = $this->createFormBuilder()
->add('name', TextType::class)
// or ->add('name', Symfony\Component\Form\Extension\Core\Type\TextType)
->add('age', IntegerType::class)
// or ->add('age', Symfony\Component\Form\Extension\Core\Type\IntegerType)
->getForm();
关于forms - 无法在第 91 行的 vendor/symfony/symfony/src/Symfony/Component/Form/FormRegistry.php 中加载类型 "text",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33160763/
我是一名优秀的程序员,十分优秀!