Я хочу создать панель пользовательских настроек.
В форме я хотел бы иметь местозаполнитель с текущим значением, которое пользователь имеет для своего параметра.
Вот пример кода:
//... $form = $this->createFormBuilder($user) ->add('Username', TextType::class, array( 'label' => "Change UserName", 'placeholder' => $userData[0]->getUsername() )) //...
Используя такие значения, я получаю эту ошибку в браузере:
Опция «placeholder» не существует. Определенные параметры: «действие», «allow_extra_fields», «attr», «auto_initialize», «block_name», «by_reference», «составные», «ограничения», «csrf_field_name», «csrf_message», «csrf_protection», «csrf_token_id» "," error_mapping "," extra_fields_message "," inherit_data "," invalid_message "," invalid_message_parameters "," label "," invalid_message_parameters "," invalid_message_parameters "," «label_attr», «label_format», «mapped», «method», «post_max_size_message», «property_path», «required», «translation_domain», «trim», «upload_max_size_message», «validation_groups».
Проблема заключается только в самом параметре, потому что 'data' => $userData[0]->getUsername()
работает и отображает правильную информацию.
Вот параметры использования моей страницы:
namespace AppBundle\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use AppBundle\Entity\Task; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\SubmitType; use AppBundle\Entity\Post; use AppBundle\Entity\User;
placeholder
– атрибут html.
$form = $this->createFormBuilder($user) ->add('Username', TextType::class, array( 'label' => "Change UserName", 'attr' => array( 'placeholder' => $userData[0]->getUsername() ) ) )