Drushを使用して匿名でaccess comments
、post comments
、post comments without approval
を有効にしたい。
フレッシュインストールでは、テーブルエントリは次のようになります。
INSERT INTO `permission` VALUES (2,2,'access comments, access content, post comments, post comments without approval',0);
access comments
、post comments
、post comments without approval
を匿名で有効にすると、次のようになります。
INSERT INTO `permission` VALUES (3,1,'access comments, post comments, post comments without approval, access content',0);
INSERT INTO `permission` VALUES (4,2,'access comments, post comments, post comments without approval, access content',0);
drush variable-set error_level "0"
を使用して、エラー報告レベルを変更できます。しかし、上記の場合はどうですか?理解しにくい
現在、ロールに特定の権限を付与するために実行する明示的なコマンドはありません。ドキュメントはここで非常に役立ちます- http://www.drush.org/help/5
ただし、問題を解決するために、drushを使用してネイティブSQLを実行できます
例えば.
drush sql-query "INSERT INTO permission VALUES (4,2,'access comments, post comments, post comments without approval, access content',0)"
これがサイトのインストール後に定期的に行う作業である場合は、独自のカスタムインストールプロファイル(必要なSQLまたは機能を含む)を作成するか、独自のカスタムモジュール(機能を使用して作成するなど)を作成することを検討してください。このスクリプトをCLI経由で実行する必要があるのは、最もメンテナンスしやすいソリューションではないと思います。
Permissions API のDrushコマンドを使用します。
この投稿に出会い、Drupal 7を使用している場合は、2つの選択肢があります。
1.SQLを使用して、以下を実行できます。
drush sql-query "INSERT INTO role_permission VALUES (<role id>,'<permission>','<module>')";
例えば.
drush sql-query "INSERT INTO role_permission VALUES (1,'access comments','comments')"
または
2. Permissions APIモジュール を使用して、以下を実行できます。
drush -u 1 perm-grant --roles="anonymous user" --permissions="access comments"