friendly-id,检查两个模型/表格以查找现有的slu ..

时间:2013-10-25 23:41:04

标签: ruby-on-rails friendly-id

想象一下以下路线:

get ':slug/:location'  

其中:搜索根据提供的slug在两个不同的模型(即Businnes,Person)上触发查找器。

我目前面临的问题是,我无法找到一种方法来检查两种不同的模型,以便在生成新的模型时使用。

TL;博士: 我试图避免两个不同模型被给予相同slug的情况。

任何帮助表示感谢。

1 个答案:

答案 0 :(得分:0)

您要做的是在每个模型中运行自定义验证器,这个验证器将放在您的商业模型中,例如:

before_save :unique_slug

private

def unique_slug
  self.slug = self.name + "-" + self.id unless
    self.find_by_slug(:slug).blank? and Person.find_by_slug(:slug).blank?
  end
end