このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
apricot:ext:di-container [2020/05/26 16:10] y2sunlight [Containerクラス] |
apricot:ext:di-container [2020/05/26 16:42] (現在) y2sunlight [Providerクラス] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | > 編集中 | ||
- | |||
- | ----- | ||
- | |||
====== Apricot DIコンテナー ====== | ====== Apricot DIコンテナー ====== | ||
--- // | --- // | ||
行 208: | 行 204: | ||
</ | </ | ||
- | このクラスは、名前空間APPの直下に存在し、アプリケーションのモデル及びサービスのマップを提供します。現版のApricotでは、モデルはユーザモデル( User )だけで、サービスについては存在しません。モデルやサービスを追加する場合は、上例に習って適宜追加して下さい。 | + | このクラスは、名前空間Appの直下に存在し、アプリケーションのモデル及びサービスのマップを提供します。現版のApricotでは、モデルはユーザモデル( User )だけで、サービスについては存在しません。モデルやサービスを追加する場合は、上例に習って適宜追加して下さい。 |
+ | |||
+ | 現版のApricotでは、サービスは存在しませんが、サービス用として以下のフォルダが予約されています。 | ||
+ | |||
+ | < | ||
+ | / | ||
+ | </ | ||
尚、League/ | 尚、League/ | ||
行 254: | 行 256: | ||
</ | </ | ||
- | ==== テスト実行 ==== | + | \\ |
- | > TODO: StabControllerの例 | + | |
+ | ==== サービスコンテナの使用例 ==== | ||
+ | |||
+ | === スタブコントローラ === | ||
+ | |||
+ | サービスコンテナをテストするために、スタブコントローラを以下のように修正します。 | ||
+ | |||
+ | {{fa> | ||
+ | <code php StubController.php> | ||
+ | namespace App\Controllers; | ||
+ | |||
+ | use App\Foundation\Container; | ||
+ | use App\Foundation\Controller; | ||
+ | |||
+ | /** | ||
+ | * Stubコントローラ | ||
+ | */ | ||
+ | class StubController extends Controller | ||
+ | { | ||
+ | /** | ||
+ | * Stub Page | ||
+ | * @return \Core\Foundation\Response | ||
+ | */ | ||
+ | public function index(int $no=null) | ||
+ | { | ||
+ | $title = "Stub {$no}"; | ||
+ | |||
+ | /* | ||
+ | * Example for Container | ||
+ | * @var \App\Models\User $user | ||
+ | */ | ||
+ | $user = Container:: | ||
+ | $userCount = count($user-> | ||
+ | $messages[] = " | ||
+ | |||
+ | return render(' | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | * '' | ||
+ | * ユーザモデルの '' | ||
+ | * ユーザ数を表示するために、テンプレート変数 '' | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === テスト実行 | ||
+ | |||
+ | Apricotのホーム画面を表示して、[Menu2]をクリックして下さい。 | ||
+ | |||
+ | [{{apricot: | ||
+ | ■ 画面にユーザ数が表示されます | ||
+ | |||
+ | <code> | ||
+ | Number of registered users : 2 | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
\\ | \\ | ||