【发布时间】:2016-07-23 01:47:09
【问题描述】:
在使用 after_commit 回调创建对象后,我正在尝试为该对象生成一个唯一的 slug。
after_commit :create_slug, on: :create
def create_slug
self.slug = generate_slug
self.save
end
当我尝试保存对象时,出现“堆栈级别太深”错误。我假设是因为我正在保存对象并且它被一次又一次地调用 after_commit 回调。
在这种情况下生成和保存独特 slug 的最佳方法是什么?
【问题讨论】:
标签: ruby-on-rails activerecord slug