С Symfony 2.7 вы можете настроить имя формы в своем классе EntityType с помощью метода getName()
Это теперь устарело. Есть ли другой способ сделать это с помощью Symfony 3.0?
У меня есть собственный прототип entry_rows для коллекций, которые мне нужно использовать в разных формах.
Поскольку имя строк основано на имени формы, мне нужно будет изменить позже, чтобы использовать их в другой форме.Symfony3: можно ли изменить название формы?
ответ
Вы должны использовать метод getBlockPrefix
вместо getName
, как описано в руководстве по миграции here.
В качестве примера:
/**
* Returns the prefix of the template block name for this type.
*
* The block prefix defaults to the underscored short class name with
* the "Type" suffix removed (e.g. "UserProfileType" => "user_profile").
*
* @return string The prefix of the template block name
*/
public function getBlockPrefix()
{
return "form_name";
}
Надеется, что это поможет
Это именно то, что мне нужно! Вы решили мою проблему! Я не знал, что имя формы теперь называется blockPrefix, вот чего я не нашел в официальном документе. Спасибо за ссылку на руководство по миграции, я попытаюсь взглянуть на нее в следующий раз, когда я ищу функциональность до 3.0. – Roubi
В зависимости от того, как ваша форма построена, существуют различные способы задать имя вашей формы.
Если вы создаете форму через $this->createForm(CustomType::class)
:
$formFactory = $this->get('form.factory');
$form = $formFactory->createNamed('custom_form_name', CustomType::class);
Если вы строите форму от контроллера непосредственно через $this->createFormBuilder()
:
$formFactory = $this->get('form.factory');
$form = $formFactory->createNamedBuilder('custom_form_name', CustomType::class);
Посмотрите на FormFactory и FormBuilder API, для получения дополнительной информации ,
- 1. Можно изменить название записи?
- 2. Можно ли изменить название ECLIPSE
- 3. Можно ли изменить название раздела заголовка UITableView
- 4. C# - Изменить название другой формы
- 5. Возможно ли изменить название уведомления?
- 6. Можно ли изменить размер «настраиваемой формы»?
- 7. Symfony3 - Комбинированные формы
- 8. Можно ли изменить название браузера в selenium C#?
- 9. Можно ли изменить название столбца в функции PostgreSQL?
- 10. Можно ли изменить название набора cookie AWSELB от AWS ELB?
- 11. Можно ли изменить название пакета приложения Android в Google Play?
- 12. Можно ли изменить произвольное название окна в KDE?
- 13. Можно ли изменить предыдущее название спринта в jira green hopper?
- 14. Можно ли изменить название значка диалога в InstallShield?
- 15. Можно ли изменить название и стиль UIBarButtonItem во время выполнения?
- 16. Можно ли изменить название модели на сайте администратора django?
- 17. Можно ли переопределить формы?
- 18. Якорь ошибка формы - Symfony3/материализовать
- 19. изменить название формы из отдельного класса
- 20. SEO Как часто можно изменить название сайта
- 21. Ошибка после сохранения формы [Symfony3]
- 22. изменить название название
- 23. Переименовать название формы WinForms
- 24. Можно ли изменить цвет?
- 25. Можно ли изменить подпроцесс?
- 26. Можно ли изменить структуру?
- 27. Можно ли изменить паруса.
- 28. Можно ли изменить TWTweetComposeViewController?
- 29. Как изменить название ColorDialog?
- 30. Как установить имя формы непосредственно на symfony3?
Я не думаю, что это хорошая идея, чтобы полагаться на имя пользовательской формы. Почему вы не можете менять свои коллекции? Я много использую коллекции, но я не сталкивался с этой проблемой. –
@StephanVierkant Почему это плохая идея? Если вы знаете какую-то проблему, это может привести, скажите, пожалуйста, как я собираюсь использовать ответ Маттео. Я не хочу менять свои коллекции, потому что у меня две формы: formA с полем myCollection и formB, у которого также есть поле myCollection. Поэтому в моей прототипе пользовательской формы, если я пишу блок вроде _formA_myCollection_entry_row, он не будет распознан, когда я вызову свою форму Б, потому что на этот раз он будет называться _formB_myCollection_entry_row. Надеюсь, я понятен ... – Roubi