Merhaba arkadaşlar. Kaç gündür araştırdığım mantığı doğrumu yürütüyorum tam olarak mutmain olamadığım bir konu.
Şu şekilde kullanıyorum normalde.
public function findAll($eagerLoad = [], $limit = 20, $columns = ['*'])
{
return $this->model->with($eagerLoad)->orderBy('id', 'asc')->paginate($limit, $columns);
}
public function findWhereHasMorph(string $relatedName, array $relatedModel, Closure $closure, $eagerLoad = [], $limit = 20, $columns = ['*'])
{
return $this->model->whereHasMorph($relatedName,$relatedModel, $closure)->with($eagerLoad)->orderBy('id', 'asc')->paginate($limit, $columns);
}
controller dosyamda ise $this->repository->findWhereHasMorph() vsvs gibi kullanıyorum yanı findAll tümünü getirmem için findWhereHasMorph ise morph koşulunu uygulamam için.
ancak bu şekilde kullanım ne kadar doğru tam anlamadım.
bunu şu şekilde nasıl yapabiliriz yada doğru kullanımları nedir
mesela controller dosyamda
$this->repository->whereHasMorph()->findAll(); gibi galiba burada abstract giriyor devreye;
yada $this->repository->with()->findAll(); vs gibi bu şekil de mi yapılması gerekiyor. Yada yukarıda izlediğim yöntem doğrumudur?
Sıkıntı şurada ben düz update metodu yazdığımda repository'e bazı durumlarda da wherehasmorph yada farklı koşullar ile sınayıp update etmem gerektiğinde farklı farklı aynı işi yapcak olan methodlar yazıyorum.
$this->repository->where('status', 1)->update(); şeklinde kullanmak mı lazım bu şekil de de nasıl yapılır bilmiyorum.