ruby-on-rails - 如何在 FriendlyId 中的重复列 slug 上引发错误?
问题描述
我使用 friendly_id gem,如果我的 slug 列有重复值,gem 通过添加唯一键来更新它。我想提出错误already been taken
。我怎样才能做到这一点?
解决方案
似乎friendly_id(v5.2.4) 没有选项可以避免在发生slug 冲突时设置UUID。因此,解决此问题的最佳方法是重新定义负责解决冲突并引发异常的方法。
class Post < ApplicationRecord
extend FriendlyId
friendly_id :title, use: :slugged
def resolve_friendly_id_conflict(candidates)
raise ActiveRecord::RecordNotUnique
end
end
推荐阅读
- javascript - 如何将字符串转换为对象数组?
- c++ - 如何衰减所有可变参数模板参数?
- wordpress - 加载时自定义导航步行器中断
- r - 使用 Riverplot 将 sankey 图保存为 svg
- api - this.http.post 在 ionic 3 中不起作用,即使它没有显示任何错误
- multithreading - 如果发生错误,停止多个线程并继续运行主线程?Python
- reactjs - 我无法跳到其他步骤
- python - 我们可以批量发送json对象吗?
- c# - 赋值的左侧必须是我的代码中的变量、属性或索引器
- php - XAMPP: How to upgrade PEAR