Symfony 2.3:在访问另一个站点时记住表单输入

伊曼纽尔·奥斯特(Emanuel Oster)

我有的:

具有多个不同输入字段等的表单。有趣的部分是集合字段:

$builder->add( 'publicationAuthors', 'collection', array (
            'type' => new AuthorPublicationType(),
            'allow_add' => true,
            'allow_delete' => true,
            'by_reference' => false,
            'label' => 'Autoren' 
));

此集合引用另一个FormType,仅包括一个实体字段和一个订单ID:

public function buildForm(FormBuilderInterface $builder, array $options) {
    $builder->add( 'author', 'entity', array (
            'class' => 'indPubBundle:Author',
            'multiple' => false,
            'label' => 'Autor',
            'query_builder' => function (EntityRepository $er) {
                return $er->createQueryBuilder( 'a' )
                    ->orderBy( 'a.author_surname', 'ASC' );
            } 
    $builder->add( 'order_id', 'hidden');
    ));
}

通过JS,我可以向表单中添加新的收藏表单字段,以便用户随后可以选择其中的几个作者并对其进行排序。

我需要的:

到目前为止,由于实体字段,用户只能选择现有作者。我要增强表单,以便用户还可以创建新作者并在表单中使用这些作者。我想添加一个按钮,该按钮会将用户重定向到新表单,在该表单中,他可以创建新作者。然后,在提交该表单后,应将用户重定向回原始表单并继续填写。

这里的主要问题是,我想记住用户以前对原始表单的输入,因此他不需要从头开始。用户使用作者创建表单时,是否可以记住这些输入?

我想记住会话中的数据,但是有一个问题:如果用户打开一个新选项卡,则他可能会覆盖旧的表单输入,因为两个选项卡的会话ID都相同。

伊曼纽尔·奥斯特(Emanuel Oster)

好吧,我找到了一个令我满意的解决方案。基本上,我会处理整个表单数据,将其序列化,并在一个隐藏的表单字段中记住这一点。因为serialize函数返回了一些在html中不可用的符号,所以我也使用base64对该字符串进行编码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从Symfony2中的表单检索另一个实体

来自分类Dev

另一个实体的symfony2 php访问对象

来自分类Dev

如何访问symfony2中另一个html.twig文件中的javascript变量?

来自分类Dev

Symfony2获取另一个实体中一个实体的实体

来自分类Dev

Symfony 2表单错误

来自分类Dev

Symfony 2表单验证

来自分类Dev

访问被拒绝的Symfony 2

来自分类Dev

Symfony2:从控制器中的另一个文件获取HTML

来自分类Dev

使用另一个symfony2项目作为供应商

来自分类Dev

在Symfony2上添加与另一个特定实体相关的新实体

来自分类Dev

Symfony 2-从另一个控制器呼叫控制器

来自分类Dev

Symfony2 FOSUserBundle自动关联到另一个实体

来自分类Dev

Symfony2从与另一个oneToMany相关的实体oneToMany获取值

来自分类Dev

来自另一个控制器的Symfony2呼叫控制器

来自分类Dev

Symfony 2以另一个Entiy形式创建实体

来自分类Dev

Symfony2配置-另一个data.timezone错误

来自分类Dev

调用Symfony2中另一个Bundle的函数

来自分类Dev

我们可以使用Symfony2处理表单,而无需在末尾重定向到另一个URL吗?

来自分类Dev

Symfony2-以表格形式显示一个属性,由另一个属性映射

来自分类Dev

Symfony 2-在输入文本时输入表单

来自分类Dev

将另一个控制器转发到symfony2中的数组时,如何转换JSON数据?

来自分类Dev

Symfony 2 /教义2:同一张表的两个实体,一个使用另一个

来自分类Dev

Symfony 2 /教义2:同一张表的两个实体,一个使用另一个

来自分类Dev

Symfony 2表单级联验证

来自分类Dev

Symfony2表单集合-

来自分类Dev

Symfony2表单处理

来自分类Dev

Symfony 2表单级联验证

来自分类Dev

Symfony2-拒绝访问

来自分类Dev

阻止用户访问symfony 2

Related 相关文章

热门标签

归档