Gedmo Slug与人际关系

时间:2019-09-18 11:03:47

标签: symfony doctrine-orm slug

我使用Doctrine ORM和Gedmo \ Slug,并且我有与标题字段相关的完整工作的类,并且我想按职位名称生成子弹。我这样配置SlugHandler:

/**
     *
     * @Gedmo\Slug(handlers={
     *      @Gedmo\SlugHandler(class="Gedmo\Sluggable\Handler\RelativeSlugHandler", options={
     *          @Gedmo\SlugHandlerOption(name="relationField", value="job"),
     *          @Gedmo\SlugHandlerOption(name="relationSlugField", value="title"),
     *          @Gedmo\SlugHandlerOption(name="separator", value="-"),
     *      })
     * }, fields={"slug"})
     * @ORM\Column(type="string", unique=true, nullable=true)
     */
    private $slug = '';


    /**
     * @var Job
     *
     * @ORM\OneToOne(targetEntity="Job", inversedBy="estimation")
     * @ORM\JoinColumn(name="job_id", referencedColumnName="id", nullable = false)
     */
    private $job;

但是在子字段中,设置标题值与标题字段值完全相同(不包括小写字母,分隔符和空格)。 我不明白是怎么回事

1 个答案:

答案 0 :(得分:0)

如果突然遇到类似的问题,则需要将设置选项urilize设置为true:

/**
     *
     * @Gedmo\Slug(handlers={
     *      @Gedmo\SlugHandler(class="Gedmo\Sluggable\Handler\RelativeSlugHandler", options={
     *          @Gedmo\SlugHandlerOption(name="relationField", value="job"),
     *          @Gedmo\SlugHandlerOption(name="relationSlugField", value="title"),
     *          @Gedmo\SlugHandlerOption(name="separator", value="-"),
     *          @Gedmo\SlugHandlerOption(name="urilize", value="true"),
     *      })
     * }, fields={"slug"})
     * @ORM\Column(type="string", unique=true, nullable=true)
     */
    private $slug;