2017-01-21 3 views
0

Je ne sais pas pourquoi je reçois cette erreur:Laravel propriété non définie (référentiel)

Undefined property: App\Repositories\Admin\MedicineRepository::$getMedicineInformation

quand je suis dd-ment la valeur du résultat

MedicineCOntroller.php

<?php 

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use App\Repositories\Admin\MedicineRepository; 
use App\Http\Requests; 
use App\Dosage; 

class MedicineController extends Controller 
{ 
    public function __construct(MedicineRepository $MedicineRepository) 
    { 
     $this->MedicineRepository = $MedicineRepository; 
    } 

    public function getMedicine() 
    { 
     $medicine = $this->MedicineRepository->getMedicineInformation; 
     dd($medicine); 
     //return view('admin.show-medicines',compact('dosage')); 
    } 
} 

MedicineRepository.php

<?php 
namespace App\Repositories\Admin; 
use App\Medicine, 
App\Dosage; 

class MedicineRepository 
{ 

    public function __construct(Medicine $medicine, Dosage $dosage){ 
     $this->medicine = $medicine; 
     $this->dosage = $dosage; 
    } 

    public function getMedicineInformation() 
    { 
     return $medicine 
     ->join($this->dosage,'medicines.id' ,'=', 'dosages.medicine_id') 
     ->select('generic_name','dosages.dosage_name'); 
    } 






} 

Répondre

2

Depuis getMedicineInformation() est une méthode, vous devriez l'appeler:

$this->MedicineRepository->getMedicineInformation(); 
+0

Hey man, Puis-je demander quelque chose? – d3cypher

0

Vous liez d'appeler la méthode sans parenthèses. Vous pouvez appeler des variables telles que cette méthode ne

essayer

$this->MedicineRepository->getMedicineInformation();