我有一个问题,宝石铁路4-自动完成。这是完美的工作,但由于我已经为用户安装了设计,我需要连接使用自动完成,否则它不工作。
事实上,如果我撤回"Before_action: authenticate_user!“在application_controller.rb中,它可以工作,但我不能删除它。
如何跳过铁路4上的身份验证--自动完成,就像跳过索引上的身份验证一样
Skip_before_action: authenticate_user !,只::索引,:显示
我怎么能做到呢?
发布于 2017-03-25 02:11:30
你现在可能已经搞清楚了,但你问题的秘诀是跑
rake routes您会注意到,为您的自动完成创建了一个指定的路由。然后,只需将方法名称白名单(从路由表中收集)。
所以看一看路线,前面有“自动完成”的那条是你需要的。
然后,在处理自动完成的控制器中,添加一个白名单,如果它是针对该操作的,则添加一个白名单,如下所示:
skip_before_action :authenticate_user!, only [:index, :autocomplete_brand_website]我编写了一个示例应用程序,说明了它是如何以最简单的形式工作的:
https://bitbucket.org/bunglify/so-autocomplete-devise/overview
发布于 2017-03-24 19:26:36
可以使用参数以外的其他方法跳过某些操作的before_action:
before_action :authenticate_user!, except: [:index, :show]您还可以跳过使用before_action中的skip_before_action继承的UsersController:
skip_before_action :authenticate_user!, only: [:index, :show]https://stackoverflow.com/questions/43007120
复制相似问题