kikwik / referable-bundle
Doctrine 2 实体的可引用行为
v2.0.2
2023-04-28 15:25 UTC
Requires
- php: ^7.1.3
- ext-json: *
- doctrine/orm: ^2.7
- symfony/framework-bundle: ^5.3
README
此捆绑包将为 symfony 4 中的 Doctrine 2 实体保存引用值
安装
打开命令行,进入您的项目目录并执行以下命令以下载此捆绑包的最新稳定版本
$ composer require kikwik/referable-bundle
配置
创建 config/packages/kikwik_referable.yaml
配置文件
kikwik_referable: interfaces: CpcReferableInterface: cookie_name: 'r' query_params: ['r'] expire: '+30 days' UtmReferableInterface: cookie_name: 'utm' query_params: [ 'utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content' ] expire: '+30 days'
在您的类中实现一个或多个接口并使用相应的特性(特性只能与示例中的 query_params 一起使用)
namespace App\Entity; use Doctrine\ORM\Mapping as ORM; use Kikwik\ReferableBundle\Model\CpcReferableInterface; use Kikwik\ReferableBundle\Model\CpcReferableTrait; use Kikwik\ReferableBundle\Model\HttpReferableInterface; use Kikwik\ReferableBundle\Model\HttpReferableTrait; use Kikwik\ReferableBundle\Model\UtmReferableInterface; use Kikwik\ReferableBundle\Model\UtmReferableTrait; use Symfony\Component\Security\Core\User\UserInterface; /** * @ORM\Entity(repositoryClass=UserRepository::class) * @ORM\Table(name="`user`") */ class User implements UserInterface, HttpReferableInterface, CpcReferableInterface, UtmReferableInterface { use HttpReferableTrait; use CpcReferableTrait; use UtmReferableTrait; //... }
创建迁移并更新您的数据库
$ php bin/console make:migration $ php bin/console doctrine:migrations:migrate