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