2017 © Pedro Peláez
 

symfony-bundle symfony-native-form-builder

This bundle allows to generate simple native form using Twig

image

starx/symfony-native-form-builder

This bundle allows to generate simple native form using Twig

  • Friday, April 22, 2016
  • by starx
  • Repository
  • 2 Watchers
  • 0 Stars
  • 295 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 0 % Grown

The README.md

Symfony Native Form Builder Bundle

This bundle allows you to to create native forms on-the-fly right at your twig file without defining the form in controller/service., (*1)


Installation

Install from composer, (*2)

composer require starx/symfony-native-form-builder

Enable the bundle

Enable your bunndle from your AppKernel.php, (*3)

public function registerBundles() {
    $bundles = [
        ...,
        new Starx\SymfonyNativeFormBuilderBundle\StarxSymfonyNativeFormBuilderBundle()
    ];

    ...
    return $bundles;
}

Usages

In any twig file:, (*4)

{%  
    set native_form = native_form_builder.getNativeFormView(
        path('your_route', {
            'id': user.id
        }),
        "GET"
) %}
{{ form_start(native_form) }}
    <input class="btn btn-sm" type="submit" value="Submit" />
{{ form_end(native_form) }}

This will create a native form without any previous declaration in controller/service., (*5)

Examples

  1. Quick delete form In any twig file:, (*6)

    {%
        set native_delete_form = native_form_builder.getNativeFormView(
            path('your_route_delete_action', {
                'id': user.id
            }),
            "DELETE"
    ) %}
    {{ form_start(native_delete_form) }}
        <input class="btn btn-sm" type="submit" value="Delete"
           onClick="return confirm('Are you sure?')"
        />
    {{ form_end(native_delete_form) }}

    This will generate a quick delete form in your twig file with a single button and a CSRF token with DELETE http method, which is recommended way to delete a entity., (*7)

  2. Generating a quick form based on a predefined form type when you want to show list of entities with a small inline form on the side, (*8)

    <table>
        <thead>
            ...
        </thead>
        <tbody>
            {% for entity in entities %}
                {%
                    set native_update_form = native_form_builder.getNativeFormView(
                        path('your_enity_edit_action', {
                            'id': user.id
                        }),
                        "POST",
                        'AppBundle\\Form\\EntityType',
                        entity
                    )
                %}
                <tr>
                    <td>
                        {{ entity.id }}
                    </td>
                    <td>
                        {{ entity.name }}
                    </td>
                    <td>
                        {{ form_start(native_update_form) }}
                            {{ form_widget(native_update_form.value_field) }}
                            <input class="btn btn-sm" type="submit" value="Update" />
                        {{ form_end(native_update_form) }}
                    </td>
                </tr>
            {% endfor %}
        </tbody>
    </table>

    This will generate quick update forms in your twig template file where you are showing list of entities showing only one field required to update., (*9)

Note:, (*10)

I do understand that such use case in twig is discouraged, but other wise to solve such requirement you would have to - loop through the entities in controller - Manually create all the forms for each of those entities - Pass them in a view/twig variables to your twig template file and - Once again, loop through them again in twig file., (*11)

Instead of doing all this, as long as you don't over do it, simple use case as above should be justified., (*12)

The Versions

22/04 2016

dev-master

9999999-dev

This bundle allows to generate simple native form using Twig

  Sources   Download

MIT

The Requires

 

twig form helper symfony builder

22/04 2016

v0.1.1

0.1.1.0

This bundle allows to generate simple native form using Twig

  Sources   Download

MIT

The Requires

 

twig form helper symfony builder

20/04 2016

0.1.0

0.1.0.0

This bundle allows to generate simple native form using Twig

  Sources   Download

MIT

The Requires

 

The Development Requires