我在嵌套模型表单中同时创建一个位置和用户。我希望用户被带到刚刚创建的位置ID的位置显示页面。我怎么能这样做?
我知道我可以通过将其放入应用程序控制器来获取位置索引
def after_sign_in_path_for(resource)
locations_path # <- Path you want to redirect the user to.
end
我试过
def after_sign_in_path_for(resource)
location_path(@location) # <- Path you want to redirect the user to.
end
但它给id的值为nil。有什么想法吗?
答案 0 :(得分:3)
你应该做的只是
def after_sign_in_path_for(resource)
location_path(resource) # <- Path you want to redirect the user to.
end
但由于您的resource
很可能是用户,因此更安全的是:
def after_sign_in_path_for(resource)
if resource.class == User
location_path(resource.location)
elsif resource.class == Location
location_path(resource)
end
end
这将处理两种资源类型,并假设您的User
与创建的Location
相关联。