【问题标题】:User created custom URL with Rails 4用户使用 Rails 4 创建自定义 URL
【发布时间】:2015-07-21 20:10:29
【问题描述】:

在我们的网站上,我希望用户能够出于营销目的创建自己的个性化/自定义 URL(即 www.website.com/cakeparty2015 实际上转到 www.website.com/cake/party-supplies/2015-inventory)。

这不是一个自定义的用户创建页面 - 它是一个已经存在的页面,它将被路由到。唯一的新信息是自定义 URL。

我真的不知道这是否可能,但有谁知道使用 Rails 拥有它的方法,这样用户就可以登录并创建自己的虚 URL,说出它的链接位置,然后自动重新-路线?

更清楚一点 - 希望 我希望用户填写包含以下内容的表单:

个性网址 -

实际网址 -

当他们提交此表单时,新创建的虚 URL 链接到实际 URL。我想这样做,而不必将每个自定义 URL 都放在我的路由文件中。

也许我看错了。我目前正在尝试找出一种方法来缩短 URL 吗?

【问题讨论】:

  • 可能是一条包罗万象的路线?看at this StackOverflow question。从那里你只需要知道你的已知自定义 URL 列表及其目的地,然后重定向。
  • 我现在有那个。我正在努力做到这一点,以便用户可以创建自己的,而无需我每次都进入代码来更新自定义 URL 列表。
  • 哦,你应该把它们放在数据库中,对吧?将传入的 URL 剥离到自定义部分,查询数据库,如 CustomRoute.find_by(name: name),如果不存在则重定向或失败。

标签: ruby-on-rails custom-url


【解决方案1】:

您可能想使用https://github.com/norman/friendly_id

然后,您将在模型中拥有一个 slug 字段,您可以让您的用户更改它。

【讨论】:

  • 问题在于它首先需要我知道他们将重定向到哪里。我希望用户选择自定义 URL 和重定向的位置。除非我误解了它的工作原理,否则使用 FriendlyId 我将不得不为每个索引设置一个 slug 字段。
猜你喜欢
  • 2011-01-17
  • 1970-01-01
  • 1970-01-01
  • 2017-04-17
  • 1970-01-01
  • 2016-01-10
  • 1970-01-01
  • 1970-01-01
  • 2015-12-30
相关资源
最近更新 更多