2016-07-27 8 views
1

サイト構成が オフセキュリティ>グループ>コンテンツの作成者である管理のデフォルト値>のアクセス許可、それは単にボックスをチェックすることは可能ですがSilverStripeデフォルトのコンテンツ作成者の権限

enter image description here

とこれを有効にすると、私はむしろすべてのSSのインストールのためにこれをデフォルトで持っています。

のデフォルト値はどのようにしてに設定できますか?

+0

あなたがSilverstripeのために選んだ言語なので、これらの質問にPHPのタグを付けることができればbtw? – Barry

+0

絶対に追加されました。 – Faloude

答えて

1

これは必要に応じて行い、Groupの拡張子を作成し、requireDefaultRecords関数を追加します。これはすべての開発者ビルドで呼び出されます。

この機能は...拡張子があなたconfig.ymlにこれを追加登録するには...いつものよう

class GroupExtension extends DataExtension { 

    function requireDefaultRecords() { 

     //get the content-authors group 
     if ($group = Group::get()->filter('Code','content-authors')->first()) { 

      //expected permission record content 
      $arrPermissionData = array(
       'Arg'  => 0, 
       'Type'  => 1, 
       'Code'  => 'EDIT_SITECONFIG', 
       'GroupID' => $group->ID 
      ); 

      //if the permission is not found, then create it 
      if (!Permission::get()->filter($arrPermissionData)->first()) 
       Permission::create($arrPermissionData)->write(); 
     } 
    } 

} 

をその許可を探し、存在しない場合は、それを作成することです

Group: 
    extensions: 
    - GroupExtension 
+0

乾杯バリー、もう一度コードを実行できますか?いくつかの問題があるようです。私は 'コンテンツ作成者'は角括弧で囲まれていて、 'arrPermissionData'はSSエラーをスローします – Faloude

+0

ありがとうございます、申し訳ありません – Barry

+0

dev/build?flush返す:'未定義定数の使用arrPermissionData - 仮定 'arrPermissionData'' after – Faloude

関連する問題