Ruby on rails rails-4自动完成并设计授权
我对gem rails4自动完成有问题。这是完美的作品,但由于我已经安装了Desive为用户,我需要连接到使用自动完成,否则它不工作 事实上,如果我撤销应用程序\u controller.rb中的“Before\u action:authenticate\u user!”命令,它可以工作,但我无法删除它 如何跳过rails4 autocomplete上的身份验证,就像在要跳过的方法上一样 索引和显示上的身份验证 在\u操作之前跳过\u:验证\u用户!,仅限:[:索引,:显示]Ruby on rails rails-4自动完成并设计授权,ruby-on-rails,ruby,autocomplete,rubygems,Ruby On Rails,Ruby,Autocomplete,Rubygems,我对gem rails4自动完成有问题。这是完美的作品,但由于我已经安装了Desive为用户,我需要连接到使用自动完成,否则它不工作 事实上,如果我撤销应用程序\u controller.rb中的“Before\u action:authenticate\u user!”命令,它可以工作,但我无法删除它 如何跳过rails4 autocomplete上的身份验证,就像在要跳过的方法上一样 索引和显示上的身份验证 在\u操作之前跳过\u:验证\u用户!,仅限:[:索引,:显示] 如何进行操作?您可
如何进行操作?您可以使用以下参数在对某些操作执行操作之前跳过:
before_action :authenticate_user!, except: [:index, :show]
您还可以使用UsersController中的skip_before_操作跳过继承的before_操作:
skip_before_action :authenticate_user!, only: [:index, :show]
你现在可能已经明白了,但你问题的秘密是逃跑
rake routes
您会注意到,有一个为自动完成创建的命名路由。然后,您只需将该方法名称列入白名单(您将从路由表中收集该名称)
看看这些路线,前面有“autocomplete”的就是你需要的路线
然后,在处理自动完成的控制器中,为Desive添加一个白名单,如果它在该操作中,如下所示:
skip_before_action :authenticate_user!, only [:index, :autocomplete_brand_website]
我创建了一个示例应用程序,以最简单的形式演示了它的工作原理: