Laravel 在一条路线上使用两个不同的段塞

Laravel 在一条路线上使用两个不同的段塞,laravel,laravel-5,slug,Laravel,Laravel 5,Slug,我正在将一个旧的程序性站点升级到laravel 5.2,我正在与我制定的旧路线进行斗争 在这个网站上,路由是这样做的:{user\u slug}/{content\u slug}.html。目前,我用它来产生鼻涕虫,但如果这个不能满足我的需要,我愿意接受另一个 我有两个问题: 我可以使内容slug唯一,但每个用户都可以吗 如何写入路由和控制器,以匹配正确的用户段塞和正确的内容段塞 我自己还没有这样做,但我相信将来会有办法的。下面是一个未经测试的草稿,用于检查posts表中的内容,但仅在用户id

我正在将一个旧的程序性站点升级到laravel 5.2,我正在与我制定的旧路线进行斗争

在这个网站上,路由是这样做的:
{user\u slug}/{content\u slug}.html
。目前,我用它来产生鼻涕虫,但如果这个不能满足我的需要,我愿意接受另一个

我有两个问题:

  • 我可以使
    内容slug
    唯一,但每个用户都可以吗
  • 如何写入路由和控制器,以匹配正确的用户段塞和正确的内容段塞

    • 我自己还没有这样做,但我相信将来会有办法的。下面是一个未经测试的草稿,用于检查posts表中的内容,但仅在用户id字段等于变量时检查唯一性:

      'content_slug' => "unique:posts,content_slug,NULL,id,user_id,$user->id"
      

      根据您询问的人,他们可能会建议您(代替或同时执行上述操作)基于用户id和内容slug字段在数据库中设置密钥。这样,如果尝试插入,数据库将返回一个错误,并且在运行该索引下的查询时会提高性能。对索引的查询实际上可以提供指数级的性能提升。

      谢谢,我将研究它并尝试实现。