Friendship_Id 和保留字 -- 如何替换保留字?

2024-02-28

以下是导致错误的原因的示例:

ruby-1.9.2-p290 :004 > Post.new(title: "new").save!
   (0.3ms)  BEGIN
  post Load (0.3ms)  SELECT `posts`.* FROM `posts` WHERE (`slug` = 'new' OR `slug` LIKE 'new--%') ORDER BY LENGTH(`slug`) DESC, `slug` DESC LIMIT 1
   (0.3ms)  SELECT 1 FROM `posts` WHERE `posts`.`lsi_post_id` = BINARY '' LIMIT 1
   (0.1ms)  ROLLBACK
ActiveRecord::RecordInvalid: Validation failed: Friendly is reserved

我想在 Post 模型中添加一些内容,这些内容可能会用“-”或类似的内容替换新单词,但我不知道从哪里开始。

谢谢你!


使用答案daemonsy and 铁板裤我想出了这个,它悄悄地将“new”重命名为“new2”,将“edit”重命名为“edit2”,并保留其他所有内容与以前一样:

class Page < ActiveRecord::Base

  extend FriendlyId
  friendly_id :friendly_id_title, use: :slugged
  def friendly_id_title
    case title.parameterize
    when 'new' then 'new2'
    when 'edit' then 'edit2'
    else title
    end
  end

end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Friendship_Id 和保留字 -- 如何替换保留字? 的相关文章

随机推荐