0

まず第一に、私の下手な英語で申し訳ありません。cancan と bigbluebutton_rails ( https://github.com/mconf/bigbluebutton_rails ) をインストールしました。gem bigbluebutton_rails には、いくつかのモデルとコントローラーがあります。たとえば、bigbluebutton/servers_controller.rb があります。このコントローラーには、作成、参加、承認などのアクションがあります。管理者ロールを持つユーザーのみが作成できるようにしたいです。私に何ができる?load_and_authorize_resource を bigbluebutton/servers_controller.rb に入れる必要がありますか? しかし、それは宝石の中にあり、宝石のコードを変更することはお勧めできません。

4

3 に答える 3

2

cancan と統合するためのページがあります: https://github.com/mconf/bigbluebutton_rails/wiki/How-to%3A-Integrate-with-CanCan

でもうーん、まだ書いてない…

だから... Deviseと統合するためのページもあります: https://github.com/mconf/bigbluebutton_rails/wiki/How-to%3A-Integrate-with-Deviseが書かれているので、そこから推定すると受け入れられる方法は、を継承することBigbluebutton::ServersControllerです。

次のようにカスタムサーバーコントローラーを作成するのはどうですか:

class CustomServersController < Bigbluebutton::ServersController
  load_and_authorize_resource!
end
于 2012-10-03T07:25:51.143 に答える
0

ruby ではクラスを再度開くことができるので、 /config/initializers/bigbluebutton.rb にいくつかのコードを入れてください。

require 'bigbluebutton'

class Bigbluebutton::ServersController < ApplicationController
  load_and_authorize_resource!

  # you also have to overwrite this method so the @server loaded
  # by CanCan is not overwritten by Bigbluebutton
  def find_server
    @server ||= BigbluebuttonServer.find_by_param(params[:id])
  end
end
于 2012-10-03T07:57:46.987 に答える
0

Sam Peacey の回答を補完するものとして、BigbluebuttonRails には、CanCan と統合する方法を説明する (かなり単純な) wiki ページがあります: https://github.com/mconf/bigbluebutton_rails/wiki/How-to:-Integrate-with-CanCan

アプリケーション Mconf-Web ( https://github.com/mconf/mconf-web ) を例として使用することもできます。現在ブランチにあるバージョンbranch-v2( https://github.com/mconf/mconf-web/tree/branch-v2 ) では、CanCan、Devise、および BigbluebuttonRails がすべて連携して使用されています。

于 2014-06-07T19:56:23.660 に答える