首页 文章

Symfony CollectionType字段,带有一个默认字段

提问于
浏览
3

我需要你对CollectionType字段的建议 .

我用这个创建了我的集合类型字段:Symfony CollectionType Field
一切正常 . 甚至使用JQuery动态添加字段也能正常工作 .

但是有一个问题 .

每次收集字段渲染时,我都无法找到如何添加一个字段 . 在我的页面加载后,我的收集字段为空 . 但是,我想在每个页面加载后从集合中获取第一个字段 .

怎么做到这一点?我应该使用Javascript还是一种表格活动?任何有关在文档或代码片段中找到正确章节的提示都将非常受欢迎 .

1 回答

  • 1

    我想我记得打了这个,我最后在第一次加载时创建了一个空子的数据 .

    我无法测试这个,但我认为以下内容应该根据您的表单细节而有效 .

    public function someAction()
    {
        $data = [];
        $data['collection_name'][] = ['text' => ''];
    
        $form = $this->createForm(SomeType::class, $data);
    
        return $this->templating->renderResponse('template.twig.html', [
            'form' => $form,
        ]);
    }
    

    'required' => false, 添加到集合的表单配置应该可以防止空项持久化 .

    您还可以在表单Type类上调查configureOptions方法:

    public function configureOptions(OptionsResolver $resolver)
    {
        $data = [];
        $data['collection_name'][] = ['text' => ''];
        $resolver->setDefaults(array(
            'empty_data' => $data,
        ));
    }
    

相关问题