Stu*_*ins 0 ruby-on-rails friendly-id ruby-on-rails-4
有没有人用过 random_slug ( https://github.com/josei/random_slug ) 作为friendly_id?它上次更新是在 5 年前,所以我不确定尝试它是否浪费时间,或者即使有更好的解决方案?
基本上,我使用friendly_id 来获取我帖子的标题,并且我有一个范围,因此这些帖子对用户来说是唯一的,但我非常希望这些帖子是随机生成的 URL,类似于 YouTube URL 的 I假设 - 这是否可以通过友好的 ID 进行,或者我是否以错误的方式处理这个问题,还有其他什么可以让我的生活更轻松 100 倍吗?
该插件不起作用,至少它本身不起作用。它被设计为与今天的 gems 不兼容的 rails 2 插件 - 但如果你看看它的 lib,它所做的一切就是生成一个随机字符串,正如评论中指出的那样,你可以使用 SHA1 摘要。我喜欢安全随机。(同样的概念)
你的模型看起来像这样
class Post < ActiveRecord::Base
extend FriendlyId
friendly_id :generated_slug, use: :slugged
def generated_slug
require 'securerandom'
@random_slug ||= persisted? ? friendly_id : SecureRandom.hex(15)
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
754 次 |
| 最近记录: |