naucon/form-bundle

将 naucon 表单包集成到 Symfony 框架的组件。

5.0.0 2024-07-16 09:54 UTC

This package is auto-updated.

Last update: 2024-09-16 10:20:27 UTC


README

关于

将 naucon 表单包集成到 Symfony2 框架的组件。

兼容性

  • PHP 7.1 - 7.4

安装

步骤 1: 下载组件

打开命令行界面,进入您的项目目录,并执行以下命令以下载此组件的最新稳定版本

    composer require naucon/form-bundle

此命令要求您已全局安装 Composer,如 Composer 文档中的安装章节中所述。

步骤 2: 启用组件

然后,通过将其添加到项目中 app/AppKernel.php 文件中注册的组件列表中来启用该组件

    <?php
    // app/AppKernel.php

    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Naucon\Bundle\FormBundle\NauconFormBundle(),
        );
    }

配置

    naucon_form:
        csrf_parameter: "_csrf_token"
        csrf_protection: true

入门

    class DefaultController extends Controller
    {
        public function newAction(Request $request)
        {
            $user = new User();

            $formFactory = $this->get('naucon_form.factory');

            $form = $formFactory->createForm($user, 'user');
            if ($form->isBound()
                && $form->isValid()) {
                // some action, like saving the data to database

                // redirect to success page
            }

            return $this->render('default/new.html.twig', array(
                'form' => $form
            ));
        }
    }

Twig 表单扩展

此组件定义了一个 naucon 表单扩展服务用于 twig,它增加了构建表单的新辅助函数。启用此组件时,此扩展会自动激活。

示例

 {{ ncform_start(form, method='post', action='some-action', enctype='some type', {furtherOptions:'option'}) }}
 {{ ncform_field(form, 'text', 'activation_code', { style: 'some style', id: 'some id', value: 'some value', maxlength: 'some lenght', class: 'css class', required: 'required', 'data-attribute': 'some attribute'}) }}
 {{ ncform_end(form) }}

更多文档 https://github.com/naucon/Form/tree/master#formhelper-with-twig-templates

路线图

  • 将 naucon 验证器添加到翻译