簡體   English   中英

FormType驗證symfony2

[英]FormType Validation symfony2

你能幫我嗎,我找不到解決方案

<?php

/**
* Description of ContactType
*
* @author Thamer
*/

namespace Common\ContactBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Validator\Constraints\Length;
use Symfony\Component\Validator\Constraints\NotBlank;
use Symfony\Component\Validator\Constraints\Collection;

class ContactType extends AbstractType {

public function buildForm(FormBuilderInterface $builder, array $options) {

    $builder
        ->add('name', 'text', array(
                'constraints' => array(
                    new Length(array('min' => 3)),
                    new NotBlank()
                )
            )
        )
        ->add('email', 'email', array(
                new NotBlank()
            )
        )
        ->add('tel', 'number', array(
                'constraints' => array(
                    new Length(array('min' => 8)),
                    new NotBlank()
                )
            )
        )
        ->add('message', 'textarea', array(
                'constraints' => array(
                    new Length(array('min' => 10)),
                    new NotBlank()
                )
            )
        )
        ->add('recaptcha', 'ewz_recaptcha')
    ;
}

public function getName() {
    return 'common_contact';
}

}

錯誤是:

選項“ 0”不存在。 定義的選項為:“操作”,“ allow_extra_fields”,“ attr”,“ auto_initialize”,“ block_name”,“ by_reference”,“ cascade_validation”,“ compound”,“ constraints”,“ csrf_field_name”,“ csrf_message”,“ csrf_protection” ”,“ csrf_provider”,“ csrf_token_id”,“ csrf_token_manager”,“數據”,“ data_class”,“已禁用”,“ empty_data”,“ error_bubbling”,“ error_mapping”,“ extra_fields_message”,“ inherit_data”,“ intent” “ invalid_message”,“ invalid_message_parameters”,“ label”,“ label_attr”,“ label_format”,“ mapped”,“ max_length”,“ method”,“ pattern”,“ post_max_size_message”,“ property_path”,“ read_only”,“ required” ”,“ translation_domain”,“修剪”,“ validation_groups”,“虛擬”。 500內部服務器錯誤-UndefinedOptionsException

在您的行中:

->add('email', 'email', array(
            new NotBlank()
        )
    )

您要傳入new NotBlank() ,但應在constraints選項中:

->add('email', 'email', array(
         'constraints' => array(
            new NotBlank()
          )
       )
    )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM