2016-07-21 22 views
0

Ich bin neu in Laravel, derzeit mit ORM Ich versuche, Daten aus ParentCategory-Tabelle mithilfe von Fremdschlüssel in der Kategorie Tabelle abrufen.BadMethodCallException in Macroable.php Zeile 81: Methode mit existiert nicht. Laravel ORM

finden Sie den Code in meiner Kategorie Modell:

<?php 

namespace App; 

use Illuminate\Database\Eloquent\Model; 

class category extends Model 
{ 
    protected $table='category'; 

    public function parentCategory(){ 

     return $this->belongsTo('App\parentCategory','mCategoryId'); 

    } 

} 

folgende ist mein parentModellCode:

<?php 

namespace App; 

use Illuminate\Database\Eloquent\Model; 

class parentCategory extends Model 
{ 
    protected $table='maincategory'; 



    public function categories(){ 

     return $this->hasMany('App\category'); 

    } 

} 

folgenden wird der Code meiner categoryController von dem ich Daten abzurufen bin mit:

class categoryController extends Controller 
{ 
    function index(){ 

     $category=category::all()->with('parentCategory'); 
     $parentCategory=parentCategory::all(); 
     return view('admin.category',['categories'=>$category,'parentCategories'=>$parentCategory]); 

    } 

    function add(Request $request){ 

     $category= new category(); 
     $category->categoryName=$request["name"]; 
     $category->mCategoryId=$request["parentCategory"];  
     $category->save(); 
     return redirect()->route('category'); 

    } 
} 

die Fehler weiter heißt es: an der Sammlung -> __ call ('mit', array ('parent')) in categoryController.php Linie 17

+0

Welche Laravel-Version verwenden Sie? – Samsquanch

Antwort

0

In Ihrer index() Funktion können Sie

$category = category::with('parentCategory')->get(); 

versuchen Dies sollte lösen die Problem. Befolgen Sie die Eager Loading Dokumentation.