【问题标题】:Gedmo Slug from relation来自关系的 Gedmo Slug
【发布时间】:2020-01-19 07:44:30
【问题描述】:

我使用 Doctrine ORM 和 Gedmo\Slug,并且我有一个带有标题字段的相关实体作业的类,我想按职位生成 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;

但在 slug 字段中设置的 title 值与 title 字段值完全相同(没有小写、分隔符和空格)。 我不明白这是怎么回事

【问题讨论】:

    标签: symfony doctrine-orm slug


    【解决方案1】:

    如果突然遇到类似问题,需要set option urilize in 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;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-10
      • 2017-03-06
      • 1970-01-01
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多