friendly_id:可选择更新 slug

Posted

技术标签:

【中文标题】friendly_id:可选择更新 slug【英文标题】:friendly_id: Renew slugs optionally 【发布时间】:2013-01-06 11:00:22 【问题描述】:

我想允许用户 续订 通过单击复选框来获取条目的 slug。

我知道函数 should_generate_new_friendly_id? ,但不知道在这种情况下如何使用它,因为它是在模型中定义的,无法读取 params 属性。

感谢您的任何想法!

【问题讨论】:

【参考方案1】:

在模型上,你可以添加一个attr_accessor来测试这种情况

attr_accessor :should_generate_new_friendly_id

before_save :generate_new_friendly_id, :if => :should_generate_new_friendly_id

def generate_new_friendly_id
  self.friendly_id = ...
end

然后,您可以在表单中提供一个名为“should_generate_new_friendly_id”的复选框。一切都应该如您所愿...

【讨论】:

以上是关于friendly_id:可选择更新 slug的主要内容,如果未能解决你的问题,请参考以下文章

更新时删除旧的friendly_id gem slug [关闭]

Rails friendly_id 不会在 heroku 上的现有用户上呈现

Rails:friendly_id 和 to_json

Rails gem“friendly_id”:如何在创建对象之前获得 slug 的实时预览

使用friendly_id时如何find_by_id(对于多态关系)

rails,friendly_id,设计用户名不显示 slug