gpt4 book ai didi

ruby-on-rails - 在使用 cancancan 时添加没有对应模型的 Controller

转载 作者:行者123 更新时间:2023-12-05 01:46:39 25 4
gpt4 key购买 nike

我添加了一个 Controller collaborators 来管理 UsersCompanies 之间的特定类型的加入关联。问题是每当我从 collaborators 加载任何东西时,我都会收到错误

uninitialized constant Collaborator

据我了解,这是因为没有模型Collaborator,而我正在使用cancancan进行授权。来自老康康(注意不是康康)documentation ,我已经能够收集到没有相应模型的 Controller 需要手动为其授权模型,例如:load_and_authorize_resource :the_model, :parent => false

如果我在我的 application.rb Controller 中禁用 load_and_authorize_resource,这似乎可以工作。

所以我的问题是:授权没有相应模型的 Controller 的最佳方式是什么?我可以在我的应用程序 Controller 中继续 load_and_authorize_resource 吗?

非常感谢。

最佳答案

LINK会有帮助。

从链接,我引用,

class ToolsController < ApplicationController
authorize_resource :class => false
def show
# automatically calls authorize!(:show, :tool)
end
end

在你的 ability.rb 中:

class Ability
include CanCan::Ability

def initialize(user)
can :show, :tool
end
end

关于ruby-on-rails - 在使用 cancancan 时添加没有对应模型的 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34763269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com