URL-адреса в стиле Stackoverflow с Friendly_ID

Мне удалось настроить friendly_id для одной из моих моделей (категорий), но мне нужна помощь в настройке для другой модели.

По сути, я хочу, чтобы URL-адреса были примерно такими: domain.com/129121/title-of-post, где 129121 — это идентификатор сообщения.

Я попытался сделать это, обновив to_param, но это не сработало (https://github.com/gitlabhq/gitlabhq/issues/7265).

Я не уверен, как заставить работать ссылки в стиле SO. Любая помощь будет оценена по достоинству!


person nahtnam    schedule 01.10.2014    source источник


Ответы (1)


Я пробовал что-то подобное и придумал

 def slug
  name.downcase.gsub(" ", "-")  # you can change name to the attribute that holds your title
 end

 def to_param
  "#{self.id}-#{slug}"
end

Может получить вас на вашем пути

person Richlewis    schedule 01.10.2014
comment
На самом деле я хотел, чтобы / отделял идентификатор от имени. (Посмотрите на URL-адрес переполнения стека. Я хочу что-то подобное.) - person nahtnam; 01.10.2014
comment
была причина, по которой я не зашел так далеко, сложности с маршрутами и производительностью, я выясню причины и дам вам знать - person Richlewis; 01.10.2014
comment
Ok. Спасибо. Я знал, как использовать to_param, но я хотел, чтобы они выглядели точно так же, как SO, потому что они выглядят круто. - person nahtnam; 02.10.2014