- Drupal 8 Module Development
- Daniel Sipos
- 197字
- 2021-07-02 12:22:40
Rendering forms
Staying on forms for just a bit longer, let's quickly learn how to render forms programmatically. We have already seen how to map a form to a route definition so that the page being built contains the form when accessing the route path. However, there are times when we need to render a form programmatically, either inside a Controller or a block, or wherever you want. We can do this using the FormBuilder service.
The form builder can be injected using the form_builder service key or used statically via the shorthand:
$builder = \Drupal::formBuilder();
Once we have it, we can build a form, like so:
$form = $builder->getForm('Drupal\hello_world\Form\SalutationConfigurationForm');
In the preceding code, $form will be a render array of the form that we can return, for example, inside a Controller. We'll talk more about render arrays a bit later on, and you'll understand how they get turned into actual form markup. However, for now, this is all you need to know about rendering forms programmatically—you get the form builder and request from it the form using the fully qualified name of the form class.
With this, we can close the parenthesis on forms.
- Oracle從入門到精通(第3版)
- Mastering QGIS
- Django:Web Development with Python
- Python自然語言處理(微課版)
- Instant RubyMotion App Development
- PHP 7+MySQL 8動態網站開發從入門到精通(視頻教學版)
- Selenium Testing Tools Cookbook(Second Edition)
- Spring核心技術和案例實戰
- RabbitMQ Essentials
- 學習OpenCV 4:基于Python的算法實戰
- Creating Data Stories with Tableau Public
- Spring Boot+MVC實戰指南
- 編程可以很簡單
- 分布式數據庫HBase案例教程
- Spring Boot從入門到實戰