Я думал о создании вспомогательного метода, который сокращает внутренние ссылки.Например: если мой сайт - example.com, и пользователь публикует ссылку на http://www.example.com/posts/80, было бы неплохо сократить текст ссылки до поста № 80 и http://www.example.com/comments/5 до комментария № 5.
будет ли этого достаточно
url["http://www.example.com/posts/"] = "post#"
Или я должен вместо этого использовать регулярное выражение?
регулярное выражение!
SITE_URL = 'http://www.example.com' # make sure there is no trailing slash / url = "http://www.example.com/posts/80" short_url = url.sub( %r{^#{SITE_URL}(.*)$} , '\1') => "/posts/80"