如何在Rails中从租户名称创建可用的slug

时间:2015-02-15 18:32:09

标签: ruby-on-rails slug

所以目前我在Rails中进行了测试,说我访问的路径是租户组织名称(我的数据库中的一列)。问题是这个组织名称有时会有我不能在我的URL中使用的空格。我该怎么办?

test "an authenticated user can add default amount to their cart" do
    authenticated_user = create(:user)
ApplicationController.any_instance.stubs(:current_user).returns(authenticated_user)
tenant = create(:tenant)
tenant.projects << create(:project)

visit "/#{tenant.organization}"
within(".row") do
  click_link_or_button("Lend")
end

问题在于这一行:

visit "/#{tenant.organization}"

目前,tenant.organization =

  露西的农场

这不是一个有效的:slug。我该怎么办?

1 个答案:

答案 0 :(得分:-1)

ActiveSupport的parameterize方法完全符合您的要求。它将返回你调用它的字符串的slugable版本。 e.g:

irb(main):005:0> "Lucy's Farm".parameterize
=> "lucy-s-farm"