FOSElasticaBundle创建/更新上传嵌套实体

时间:2015-12-23 11:07:34

标签: php symfony foselasticabundle

帮助别人 谁知道,fosElasticaBundle没有上传嵌套实体,为什么? 我有疑问,当我在弹性创建天赋时不上传嵌套实体但是当编辑这个天赋时 - 嵌套字段上传有弹性。为什么如果创建人才嵌套不上传只有在编辑? 创建时:

    $user->setDeveloper($developer);
    $this->getDoctrine()->getManager()->persist($user);
    $this->getDoctrine()->getManager()->persist($developer);
    $manager->flush();

更新时:

    $manager->flush();

配置:

    fos_elastica:
clients:
    default:
      host: %elastica_host%
      port: %elastica_port%
      headers: { Authorization: Basic %elastica_auth_header% }

indexes:
    profile:
        finder: ~
        types:
             talent:
                mappings:
                    id:
                       type: integer
                    slug:
                       type: string
                    description:
                       type: string
                    user:
                        type: "nested"
                        properties:
                             id: ~
                             username:
                                type: string

当我更改嵌套实体时 - 首先用户和开发人员一切正常,现在

            talent:
                mappings:
                      id: ~
                      username:
                          type: string
                      firstName:
                          type: string
                      developer:
                          type: "nested"
                          properties:
                              id:
                                 type: integer
                              slug:
                                 type: string

但我有团队中的实体团队有嵌套的实体开发人员,他们在开发人员嵌套用户中查看开发人员。而且,我为弹性团队的团队创建开发人员而不是更新,只有当我编辑团队时,如何解决这个问题可能会覆盖一些我不知道的倾听者。当我创建开发人员时,我为这个开发人员冲洗团队,但仍然没有弹性更新

    indexes:
    profile:
        finder: ~
        types:
            team:
                 mappings:
                     id:
                       type: integer
                     slug:
                       type: string

                     developers:
                        type: "nested"
                        properties:
                            id:
                               type: integer
                            slug:
                               type: string
                            user:
                               type: "nested"
                               properties:
                                   id: ~
                                   username:
                                      type: string
                                   firstName:
                                      type: string

这是我的倾听者,也许需要这样的自定义插入?

                    listener:
                        insert: true
                        update: true
                        delete: true

但我想如果听众:〜这个变种与否?

                persistence:
                      driver: orm
                      model: Artel\ProfileBundle\Entity\Developer
                      provider: ~
                      listener: ~
                      finder: ~

我尝试这样,但仍然嵌套的实体不会弹性上传

                          listener:
                        immediate: true

我试试这个,但仍然没有上传嵌套(并且〜这是默认插入,更新,删除)

                          listener:
                        insert: true
                        update: false
                        delete: true

请帮助

0 个答案:

没有答案