在模型中的Friendly_ID url

时间:2017-04-24 21:22:08

标签: ruby-on-rails friendly-id

我在我的应用中使用Rails和React,我想在Post方法中传递as_json模型的网址。它已经在SO上找到了这个方法,我通过了localeid(或self.id):

Rails.application.routes.url_helpers.post_path(locale, id)

我现在已经在项目中包含了FriendlyID gem,我可以使用生成的slug转到我的帖子页面,但上面的方法仍会返回带有ID的旧URL。我的问题是 - 我怎么能改变它?

PS我可以做到(下面的代码),但想知道是否有更简单的方法?

...posts_path(locale) + "/#{slug}"

1 个答案:

答案 0 :(得分:4)

正确的方式(以及zip的设计方式)是

Rails

默认情况下,Rails.application.routes.url_helpers.post_path(locale, to_param) 方法会将to_param作为字符串返回,但会被直接使用slug或通过gemID等宝石的人覆盖