如何实现帐篷去网址:
localhost:3000/tenent1
而不是使用lvh或任何域或子域,如:
http://tenent1.lvh.me:3000
tenent1.example.com
或
tenent1.com
其中tenent1是用户在注册过程中创建的tenent之一。我不想使用子域名,域名。
答案 0 :(得分:1)
Apartment
gem有一个初始化文件,您可以在其中创建任何类型的电梯。我猜你不想要子域名,所以你可以写一个检查第一个路线部分的电梯(例如localhost:3000/tenant1/
)
有关详细信息,请参阅Apartment
intializer文件。
我想在你的情况下它会是这样的(在你的公寓初始化文件中添加它)
Rails.application.config.middleware.use 'Apartment::Elevators::Generic', lambda { |request|
request.path.split('/')[1] # First element will be an empty string
}
答案 1 :(得分:0)
不确定您为什么喜欢这条路线,但您可以尝试这样: -
get 'tenent:id', to: 'example_controller#example_action' as: :tenent
所以它会像这样生成url: -
tenent GET /tenent:id(.:format) example_controller#example_action
此时你需要像这样提供动态id这个路径 -
tenent_path(id: 1)
在浏览器中,它将生成您想要的完全相同的URL:_
localhost:3000/teanent1
在控制器端,您可以在params[:id]