私がやろうとしていること - 1)コントローラはロジックやもののサービスに依存します。 2)サービスは、データベースアクセスのリポジトリに依存します。 3)コントローラは依存関係としてサービスを取得します。 4)サービスは依存関係としてリポジトリを取得します。laravelサービスファイルに依存関係としてリポジトリを挿入することは可能ですか?
私のサービスクラスがある -
class AnimeService implements IAnimeService{
protected $animeRepository;
public function _construct(IAnimeRepository $_animeRepository) {
$this->animeRepository = $_animeRepository;
}
public function add(Anime $anime) {
return $this->animeRepository->add($anime);
}
}
問題がある - _constructが呼び出されないさんとして - 期待されている
Call to a member function add() on null
。
ところで、私AppServiceProvider
public function register()
{
$this->app->bind('\App\Services\Interfaces\IAnimeService', '\App\Services\Implementations\AnimeService');
$this->app->bind('\App\Repositories\Interfaces\IAnimeRepository', '\App\Repositories\Implementations\AnimeRepository');
}
から私の質問があります - 1)私は私のサービスを動作させるために、このような状況で何ができますか?
2)ベストプラクティスは何ですか?
3)私がしようとしていることを達成するために他にどんな方法がありますか?
ありがとうございます。コンストラクタは2つのアンダースコアで、__construct
なく_construct
名前を付ける必要があり
Damn typo's。 : それは働いた ありがとうたくさん:D –
はい、すべての人のためにタイプミス;)と私はかなり誰もが迷惑だと確信している間違いxDだった – martindilling