1

in My Larvel 5.6 app I am working with mysql db. and in my application I have vehicle table with following columns, vehicles,

id  category  number  brand model
1   car       123     bmw   520d
2   van       258     ford  mark
3   car       256     benz  ultra
4   car       259     bmw   520d
etc

and I am going to group all models of the table and printing here as My controller,

public function modelstatic()
{
      $models = Vehicle::groupBy('modelname')->select('id', 'modelname', \DB::raw('COUNT(*) as cnt'))->get();  
      return view('modelreports.modelstatic')->withModels($models);
}

my printing blade file is this,

@foreach($models as $model)
     {{ $model->modelname }}
@endforeach

it is printing well as

520d
mark
ultra

now I need print in-front of model name there brand name as

520d - bmw
mark - ford
ultra - benz

Then how can I do this now? I have separate Models for brand and model and still there are not relationship between Models. how can I do this, may I need relationship or may I could print brand name via vehicle table data?

1 Answer 1

2

The same way you select the model name column, you must also select the brand column, and then print the model with his brand name.

Try this:

In your controller:

public function modelstatic(){
      $models = Vehicle::groupBy('modelname')->select('id', 'modelname', 'brand', \DB::raw('COUNT(*) as cnt'))->get();  
      return view('modelreports.modelstatic')->withModels($models);
}

and in your view:

@foreach($models as $model)
     {{ $model->modelname }} - {{ $model->brand }}
@endforeach
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.