class FormRenderer implements FormRendererInterface
Renders a form into HTML using a rendering engine.
Constants
CACHE_KEY_VAR |
Methods
__construct(FormRendererEngineInterface $engine, CsrfTokenManagerInterface $csrfTokenManager = null) Constructor. | ||
FormRendererEngineInterface | getEngine() Returns the engine used by this renderer. | |
setTheme(FormView $view, mixed $themes) 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)
Constructor.
FormRendererEngineInterface getEngine()
Returns the engine used by this renderer.
setTheme(FormView $view, mixed $themes)
Sets the theme(s) to be used for rendering a view and its children.
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 = $this->get('security.csrf.tokengenerator');
if (!$csrfProvider->isCsrfTokenValid('rmuser_'.$user->getId(), $token)) {
throw new \RuntimeException('CSRF attack detected.');
}
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.
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.
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.
Please login to continue.