この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

カスタムコントローラーおよびコントローラー拡張とは?

カスタムコントローラーは、標準コントローラーを使用せずにページのすべてのロジックを実装する Apex クラスです。Visualforce ページを完全にシステムモードで実行する場合に、カスタムコントローラーを使用します。システムモードでは現在のユーザーの権限と項目レベルのセキュリティが適用されません。

コントローラー拡張は、標準コントローラーまたはカスタムコントローラーの機能を拡張する Apex クラスです。次の場合にコントローラー拡張を使用します。
  • 標準コントローラーの組み込み機能を使用するが、編集、参照、または削除などの 1 つ以上のアクションを上書きする。
  • 新しいアクションを追加する。
  • ユーザー権限が適用される Visualforce ページを作成する。コントローラー拡張クラスはシステムモードで実行されますが、コントローラー拡張が標準コントローラーを拡張する場合、標準コントローラーのロジックは、システムモードで実行されません。代わりに、ユーザーモードで実行され、現在のユーザーの権限、項目レベルのセキュリティ、および共有ルールが適用されます。

カスタムコントローラーとコントローラー拡張クラスはシステムモードで実行されるため、ユーザー権限や項目レベルセキュリティは無視されます。ただし、クラスの定義で with sharing キーワードを使用することによって、ユーザーの組織全体のデフォルト、ロール階層、および共有ルールを適用するかどうか���選択できます。詳細は、『Apex 開発者ガイド』の「with sharingwithout sharinginherited sharing キーワードの使用」を参照してください。

メモ