php - data in included views in laravel -


in laravel app passing variable $data view later include in view. in controller method have

public function random($id){     $data = db::table('reports')->where('id',$id);     return view('partials.data', compact('data')); } 

in partials.data have:

{!! form::open(['url'=>'reports/data',$id]) !!}      <table class="table table-responsive table-condensed table-bordered tab-content">         <thead>             <tr>                 <th>month</th>                 <th>value</th>             </tr>         </thead>         <tbody>             @foreach($data $dat)                 <tr>{{$dat->month}}</tr>                 <tr>{{$dat->value}}</tr>             @endforeach         </tbody>     </table>  {!! form::close() !!} 

and @ main view have function:

function kpi_values(d) {     // `d` original data object row     kpi = d.id;     return '@include("reports.data", array("id" => "kpi"))'; } 

which triggered by:

$('#monthly_table tbody').on('click', 'td.details-controls', function () {         var tr = $(this).closest('tr');         var row = table.row(tr);         if (row.child.isshown()) {             // row open - close             row.child.hide();             tr.removeclass('shown');         }         else {             row.child(kpi_values(row.data())).show();             tr.addclass('shown');           }     }); 

when run following error:

errorexception in 3534c4c98c65c2d5267bf7c54a960d41 line 13: undefined variable: data 

i have passed variable data in partial view, seems requires in primary view. there way of doing without passing variable primary view? don't want mix things because partial view controller method requires parameter, while primary view has no parameters in it.

all appreciated

laravel offers great tool handle situation in need pass parameters partial views without passing through primary view. view composer. here example :

in \app\providers\appserviceprovider.php file  public function boot() {      //get data , pass partials.data whenever partials.data executed   view()->composer('partials.data',function($view){    $view->with('data',dataset::all());  });    } 

for more advanced, can learn laracast


Comments

Popular posts from this blog

How to provide Authorization & Authentication using Asp.net, C#? -

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

How to use Authorization & Authentication in Asp.net, C#? -