Laravel 4 自定义唯一验证多列
Posted
技术标签:
【中文标题】Laravel 4 自定义唯一验证多列【英文标题】:Laravel 4 custom unique validation multiple columns 【发布时间】:2014-12-16 15:55:44 【问题描述】:我遇到了关于验证某个用户创建的博客文章的唯一永久链接的问题。架构:
users: `id`, `username`
posts: `id`, `title`, `permalink`
users_posts: `id`, `user_id`, `post_id`
现在,当用户提交新的博客文章时,他必须为他的文章选择一个唯一的永久链接,但这个永久链接应该只对他是唯一的(这意味着其他用户可以使用该永久链接,只要该永久链接在其中是唯一的用户的帖子)。
我如何使用 Laravel 验证器来做到这一点?我怀疑有任何内置的验证器,所以我必须推出自己的验证器,但我什至不确定如何编写查询来检查它。
谁能告诉我一个有助于解决这个问题的查询字符串?
【问题讨论】:
【参考方案1】:如果一篇文章只有一位作者,则不应使用第三张表。所以,你应该把 user_id id 放在posts 表中,并在posts 表中添加以下约束:UNIQUE ( permalink, user_id )
如果您的帖子可以有多个作者,那么您的永久链接系统就不能这样工作。
【讨论】:
以上是关于Laravel 4 自定义唯一验证多列的主要内容,如果未能解决你的问题,请参考以下文章