Rumah > pembangunan bahagian belakang > tutorial php > 在 symfony2 中使用 sonata-bundle,如何更加便捷地管理数据信息?

在 symfony2 中使用 sonata-bundle,如何更加便捷地管理数据信息?

WBOY
Lepaskan: 2016-07-06 13:53:54
asal
1054 orang telah melayarinya

我目前有3张表goodscategory and brand,在sonata后台中,我希望可以把类别名称和品牌名称全部显示在货品列表,下图有详细的信息:

在 symfony2 中使用 sonata-bundle,如何更加便捷地管理数据信息?

在 symfony2 中使用 sonata-bundle,如何更加便捷地管理数据信息?

从上图可以看出,iphone6plus的类别是mobile,这里我在yml文件中定义了many-to-one的关系,这里显示是正确的,但是brand.name很明显错了,iphone6plus的品牌应该是apple,这里我有疑问,我我在 goods.yml 文件中定义了两次many-to-one关系,第二次定义的是goodsbrand表,并没有正确显示。

我想更便捷地管理货品信息,在同一页面,浏览商品类别和品牌,在编辑页面同理,我应该如何实现呢?下面是我的代码块:

brand.orm.yml

<code>Application\Sonata\MallBundle\Entity\Brand:
    type: entity
    table: brand
    ...
oneToMany:
    goods:
        targetEntity: Goods
        mappedBy: brand
lifecycleCallbacks: {  }
</code>
Salin selepas log masuk
Salin selepas log masuk

goods.orm.yml

<code>Application\Sonata\MallBundle\Entity\Goods:
type: entity
table: goods
repositoryClass: Application\Sonata\MallBundle\Repository\GoodsRepository
...
manyToOne:
    category:
        targetEntity: Category
        inverseBy: goods
        joinColumn:
            name: category_id
            referencedColumnName: id
manyToOne:
    brand:
        targetEntity: Brand
        inverseBy: goods
        joinColumn:
            name: brand_id
            referencedColumnName: id
lifecycleCallbacks: {  }
</code>
Salin selepas log masuk
Salin selepas log masuk

category.orm.yml

<code>
Application\Sonata\MallBundle\Entity\Category:
type: entity
table: category
repositoryClass: Application\Sonata\MallBundle\Repository\CategoryRepository
...
oneToMany:
    goods:
        targetEntity: Goods
        mappedBy: category
lifecycleCallbacks: {  }</code>
Salin selepas log masuk
Salin selepas log masuk

您的建议,对我来说是莫大的帮助。

回复内容:

我目前有3张表goodscategory and brand,在sonata后台中,我希望可以把类别名称和品牌名称全部显示在货品列表,下图有详细的信息:

在 symfony2 中使用 sonata-bundle,如何更加便捷地管理数据信息?

在 symfony2 中使用 sonata-bundle,如何更加便捷地管理数据信息?

从上图可以看出,iphone6plus的类别是mobile,这里我在yml文件中定义了many-to-one的关系,这里显示是正确的,但是brand.name很明显错了,iphone6plus的品牌应该是apple,这里我有疑问,我我在 goods.yml 文件中定义了两次many-to-one关系,第二次定义的是goodsbrand表,并没有正确显示。

我想更便捷地管理货品信息,在同一页面,浏览商品类别和品牌,在编辑页面同理,我应该如何实现呢?下面是我的代码块:

brand.orm.yml

<code>Application\Sonata\MallBundle\Entity\Brand:
    type: entity
    table: brand
    ...
oneToMany:
    goods:
        targetEntity: Goods
        mappedBy: brand
lifecycleCallbacks: {  }
</code>
Salin selepas log masuk
Salin selepas log masuk

goods.orm.yml

<code>Application\Sonata\MallBundle\Entity\Goods:
type: entity
table: goods
repositoryClass: Application\Sonata\MallBundle\Repository\GoodsRepository
...
manyToOne:
    category:
        targetEntity: Category
        inverseBy: goods
        joinColumn:
            name: category_id
            referencedColumnName: id
manyToOne:
    brand:
        targetEntity: Brand
        inverseBy: goods
        joinColumn:
            name: brand_id
            referencedColumnName: id
lifecycleCallbacks: {  }
</code>
Salin selepas log masuk
Salin selepas log masuk

category.orm.yml

<code>
Application\Sonata\MallBundle\Entity\Category:
type: entity
table: category
repositoryClass: Application\Sonata\MallBundle\Repository\CategoryRepository
...
oneToMany:
    goods:
        targetEntity: Goods
        mappedBy: category
lifecycleCallbacks: {  }</code>
Salin selepas log masuk
Salin selepas log masuk

您的建议,对我来说是莫大的帮助。

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan