2016-02-16 4 views
1

Я столкнулся с проблемой при передаче переменных данных, которые определены в одной функции для просмотра, которая определена в функции index(). Мне нужно передать переменную $ bodystyles, определенную в функции bodystylelists(), в мое индексное представление с переопределением начальных $ bodystyles. Я вызываю bodystylelists() через AJAX как отдельный пост-маршрут. Как я могу это достичь? Ниже приведен код контроллера:Как передать переменные данные для просмотра

class DashboardController extends Controller 
{ 

    public function index() 
    { 

     $date_lists = Salemodel::lists('Datetime'); 
     $makes = Saleone::distinct()->lists('Make'); 
     $segments = Salemodel::distinct()->lists('Segment'); 
     $bodystyles = Salemodel::distinct()->whereIn('segment', $segments)->lists('Bodystyle'); 
     $models = Salemodel::distinct()->whereIn('Bodystyle', $bodystyles)->lists('Model'); 

    return \View::make('analytics.dashboard.index')->with('date_lists', $date_lists)->with('segments', $segments)->with('bodystyles', $bodystyles)->with('models', $models)->with('makes', $makes); 

} 

public function bodystylelists(Request $request) 
    { 
     $segments = $request->input('segments'); 
     $bodystyles = Salemodel::distinct()->whereIn('segment', $segments)->lists('Bodystyle'); 
     //$bodystyles = json_encode($bodystyles); 

     //print_r($bodystyles); 
    } 

} 

Я реализую три фильтра сегмента, Bodystyle, модель как три отдельных DropDownList на мой взгляд, и я реализую их в качестве каскадных фильтров. то есть когда пользователь выбирает любое значение сегмента, тогда все значения стилей тела, принадлежащие этому конкретному сегменту, должны отражаться в выпадающем списке Bodystyle. Подобная функциональность должна быть реализована между Bodystyle и Model. Я заполняю значения этих dropdownlist из базы данных MySQL.

Мои фильтры для отбора проб, как показано ниже:

select Segment:1. A select Bodystyle: 1. Hatch select Model: 1. Alto 
       2. B1      2. Sedan     2. Swift 
       3. C1      3. MUV     3. Innova 
       4. C2      4. SUV     4. Datsun 
+0

Вы можете редактировать запись с помощью функции AJAX и часть вида который использует переменную? – Laerte

ответ

0

Попробуйте

return \View::make('analytics.dashboard.index')->with(['date_lists'=> $date_lists,'segments'=> $segments,'bodystyles'=>$bodystyles,'models'=> $models,'makes'=> $makes]); 

в лезвии

$bodystyles['Bodystyle'] 
+0

Я могу передать данные клику, используя {{$ bodystyle}}. Моя проблема в том, как я могу передать $ bodystyles, определенные в bodystylelists() для просмотра, который определен в index() с переопределением начального значения $ bodystyles. – rahul16590

+0

какой результат print_r ($ bodystyles); ?? – paranoid