【问题标题】:Symfony 3 form read only field? (with FOSUserbundle)Symfony 3表单只读字段? (使用 FOSUserbundle)
【发布时间】:2017-08-18 09:52:08
【问题描述】:

使用带有 FOSUserBundle 的 Symfony 3,如何使我的用户注册的自定义字段只读)

RegistrationFormType.phpbuildForm我试过的方法:

->add('name', 'text', array('read_only' => true))

得到InvalidArgumentException

->add('name', 'text', array('read_only' => true))

得到UndefinedOptionsException

【问题讨论】:

    标签: php symfony fosuserbundle


    【解决方案1】:

    尝试这样做:

    ->add('name', TextareaType::class, array(
         'attr' => array(
            'readonly' => true,
           ),
       ));
    

    【讨论】:

    • 这给了我:InvalidArgumentException FormRegistry->getType('AppBundle\\Form\\TextareaType') in vendor\symfony\symfony\src\Symfony\Component\Form\FormFactory.php(第 74 行) .可能我错过了“使用”? TextareaType 的命名空间是什么?
    • 使用 Symfony\Component\Form\Extension\Core\Type\TextareaType;
    • 嗯,这是有效的,这回答了客人的问题。我得到一个只读字段。但我希望它显示为标签而不是文本框,所以首先,我用 TextType 替换了 TextaeraType。但我仍然想知道如何给它一个值(从服务接收)但我会为此提出两个一两个不同的问题。
    • 你可以用 jquery 做到这一点
    • 实际上,我使用 CSS 更改了“只读文本输入”外观(请参阅 stackoverflow.com/questions/45757448/… )并在控制器级别的模型中加载了初始值。
    猜你喜欢
    • 2012-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-27
    • 2016-06-11
    • 1970-01-01
    相关资源
    最近更新 更多