FormRenderer
class FormRenderer implements FormRendererInterface
Renders a form into HTML using a rendering engine.
Constants
CACHE_KEY_VAR |
Methods
__construct(FormRendererEngineInterface $engine, CsrfTokenManagerInterface $csrfTokenManager = null) | ||
FormRendererEngineInterface | getEngine() Returns the engine used by this renderer. | |
setTheme(FormView $view, mixed $themes, bool $useDefaultThemes = true) Sets the theme(s) to be used for rendering a view and its children. | ||
string | renderCsrfToken(string $tokenId) Renders a CSRF token. | |
string | renderBlock(FormView $view, string $blockName, array $variables = array()) Renders a named block of the form theme. | |
string | searchAndRenderBlock(FormView $view, string $blockNameSuffix, array $variables = array()) Searches and renders a block for a given name suffix. | |
string | humanize(string $text) Makes a technical name human readable. |
Details
__construct(FormRendererEngineInterface $engine, CsrfTokenManagerInterface $csrfTokenManager = null)
Parameters
FormRendererEngineInterface | $engine | |
CsrfTokenManagerInterface | $csrfTokenManager |
FormRendererEngineInterface getEngine()
Returns the engine used by this renderer.
Return Value
FormRendererEngineInterface | The renderer engine |
setTheme(FormView $view, mixed $themes, bool $useDefaultThemes = true)
Sets the theme(s) to be used for rendering a view and its children.
Parameters
FormView | $view | The view to assign the theme(s) to |
mixed | $themes | The theme(s). The type of these themes is open to the implementation. |
bool | $useDefaultThemes | If true, will use default themes specified in the renderer |
string renderCsrfToken(string $tokenId)
Renders a CSRF token.
Use this helper for CSRF protection without the overhead of creating a form.
Check the token in your action using the same token ID.
// $csrfProvider being an instance of Symfony\Component\Security\Csrf\TokenGenerator\TokenGeneratorInterface
if (!$csrfProvider->isCsrfTokenValid('rmuser'.$user->getId(), $token)) {
throw new \RuntimeException('CSRF attack detected.');
}
Parameters
string | $tokenId | The ID of the CSRF token |
Return Value
string | A CSRF token |
string renderBlock(FormView $view, string $blockName, array $variables = array())
Renders a named block of the form theme.
Parameters
FormView | $view | The view for which to render the block |
string | $blockName | The name of the block |
array | $variables | The variables to pass to the template |
Return Value
string | The HTML markup |
string searchAndRenderBlock(FormView $view, string $blockNameSuffix, array $variables = array())
Searches and renders a block for a given name suffix.
The block is searched by combining the block names stored in the form view with the given suffix. If a block name is found, that block is rendered.
If this method is called recursively, the block search is continued where a block was found before.
Parameters
FormView | $view | The view for which to render the block |
string | $blockNameSuffix | The suffix of the block name |
array | $variables | The variables to pass to the template |
Return Value
string | The HTML markup |
string humanize(string $text)
Makes a technical name human readable.
Sequences of underscores are replaced by single spaces. The first letter of the resulting string is capitalized, while all other letters are turned to lowercase.
Parameters
string | $text | The text to humanize |
Return Value
string | The humanized text |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/Form/FormRenderer.html