我已经friendly_id
正确设置并且一切正常,使用蛞蝓。
我遇到的问题是我的Tag
模型(即 FriendlyId 附加到的模型)上的某些名称需要进行 HTML 转义。
c++
或之类的名称.net
。
当我运行Tag.find_each(:&save)
时,它为我生成了所有的 slug....但是在那些带有这些名称的标签上,发生了这样的事情:
> c = Tag.where(:name => "c++")
Tag Load (0.9ms) SELECT "tags".* FROM "tags" WHERE "tags"."name" = 'c++'
=> [#<Tag id: 2, name: "c++", num_questions: 187598, created_at: "2013-03-23 07:02:09", updated_at: "2013-03-29 15:34:09", questions_count: 87, slug: "c">]
> Tag.where(:name => ".net")
Tag Load (0.9ms) SELECT "tags".* FROM "tags" WHERE "tags"."name" = '.net'
=> [#<Tag id: 142, name: ".net", num_questions: 149074, created_at: "2013-03-23 07:09:47", updated_at: "2013-03-29 15:34:10", questions_count: 85, slug: "net">]
1.9.3p392 :012 > Tag.where(:name => "c#")
Tag Load (1.0ms) SELECT "tags".* FROM "tags" WHERE "tags"."name" = 'c#'
=> [#<Tag id: 38, name: "c#", num_questions: 435620, created_at: "2013-03-23 07:03:27", updated_at: "2013-03-29 15:34:10", questions_count: 130, slug: "c--3">]
请注意每一个上的 slug - 以及它们如何与name
每条记录的不正确对应。
我该如何解决?