Я пытаюсь получить мои URL пути искать что-то подобное в моем Rails 4.1.7 приложения:Rails 4: Слэш от to_param slug сбежал?
http://localhost:3000/section/YYYY/MM/DD/article-title-goes-here
Чтобы сделать эту работу, я создал миграцию:
rails g migration add_slug_to_articles slug:string:uniq
rake db:migrate
А потом я добавил следующее в моем article.rb модели:
class Article < ActiveRecord::Base
def to_param
slug
end
end
Я обновил все записи в моей базе данных с:
article.update(:slug => [article.section.downcase, article.created_at.strftime("%Y/%m/%d"), article.title.parameterize].join('/'))
Но теперь, когда я нажимаю на ссылки, все косые / становятся отделался % 2F:
http://localhost:3000/articles/section%2F2014%2F11%2F10%2Farticle-title-goes-here
Я смотрел вокруг и, кажется, что один из вариантов является monkeypatch ActionDispatch, но для меня это немного хардкор, для чего-то очень часто. Разве нет более чистого способа сделать это?
Извинения за незнание, но я не могу понять, как бы я установил дату e от маршрутизации в том, как вы показали ... не могли бы вы объяснить? – DaniG2k
что-то вроде этого: get 'articles /: section /: year /: month /: day /: title', to: 'articles # show' –
Это означает, что мне всегда нужно передать 5 параметров любому методу link_to, который ссылается на статьи, верный? – DaniG2k