我想为多个城市制作网站。 例如:
在纽约登录的员工使用他们的ID登录,该ID应该连接到
ny db.(NY : xxx.com/ny <- ny data only.)
使用其ID进行TX登录的员工应该连接到
tx db.(NY : xxx.com/tx <- tx data only.)
每个州都有相同的数据库结构。 我正在接近Db的继承。这是正确的方法吗?
答案 0 :(得分:0)
听起来像租户可能是最佳选择。
基本上你会在数据库的顶层添加状态*,然后你的所有其他模型都会belong_to :state
处于某个适当的级别。然后,在控制器和视图中,确保您的范围包括where(state_id: current_user.state_id)
。
您还可以通过在config/routes.rb
中为它们添加冒号来指定路线中的参数,例如
get '/:state/login' => 'logins#new'
然后导航到xxx.com/ny/login
会将params[:state]
设置为控制器中的'ny'
。
*我认为你的意思是州而不是城市,因为你提到了纽约(NY)和德克萨斯(TX)。