2016-08-22 92 views
0

起初我使用路由和控制器发布状态视频链接上传文件注释。这是路由和控制器 这里是我的路线:路由或控制器不在Laravel 5.2中工作

Route::any('/class',[ 
'uses'=> '[email protected]', 
'as'=>'class', 
]); 

这里是我的控制器:

public function getclass(Request $request) 
{ 
    if (Input::has('post_comment')) 
    { 
     $status=Input::get('post_comment'); 
     $commentBox=Input::get('comment_text'); 
     $selectedStatus=Status::find($status); 

     $selectedStatus->comments()->create([ 
     'comment_text'=>$commentBox, 
     'user_id'=>Auth::user()->id, 
     'status_id'=>$status 
     ]); 
     Flash::message('Your comments has been posted'); 
     return redirect(route('class')); 
    } 
    if(Input::has('status-text')) 
    { 
     $text=e(Input::get('status-text')); 
     $rules = [ 
     'status_text'=>'required|string', 
     ]; 
     $validator = Validator::make($request->all(), $rules); 


     if(Input::hasFile('status_image_upload')) 
     { 
      $rules['status_image_upload'] = 'image'; 
      $validator = Validator::make($request->all(), $rules); 
      if($validator->fails()) 
      { 
       $image = $request->file('status_image_upload'); 
       $imageName = str_random(8).'_'.$image->getClientOriginalName(); 
       $image->move('status_images', $imageName); 
       $userStatus = new Status(); 
       $userStatus -> status_text = $text; 
       $userStatus -> image_url = $imageName; 
       $userStatus -> type = 1; 
       $userStatus -> users_id = Auth::user()->id; 
       $userStatus -> save(); 
       Flash::success('Your status has been posted'); 
       return redirect(route('class')); 
      } 
     } 
     else if ($validator->fails()) 
     { 
      $userStatus = new Status(); 
      $userStatus -> status_text = $text; 
      $userStatus -> video_url = $request['video_url']; 
      $userStatus -> type = 2; 
      $userStatus -> users_id = Auth::user()->id; 
      $userStatus -> save(); 
      Flash::success('Your status has been posted'); 
      return redirect(route('class')); 
     } 
} 


return view('class',[ 
'posts'=>status::orderBy('id','DESC')->get() 
]);} 

这个位置它的作品不错。 但现在我面临的问题,当我使用另一个路线和另一个控制器。 这里是我的问题的路线:

Route::post('/class',[ 
'uses'=>'[email protected]', 
'as'=>'createclass',]); 

而且我的控制器:

public function showclassdata(Request $request) 
{ 
    $randomnumber = rand(50001,1000000); 

    $classrooms = new Classrooms(); 
    $classrooms->class_name = $request['class_name']; 
    $classrooms->subject_name = $request['subject_name']; 
    $classrooms->section = $request['section']; 
    $classrooms->class_code = $randomnumber; 
    $classrooms -> user_id = Auth::user()->id; 
    $classrooms -> save(); 
    return view('class'); 
} 

在这一刻我的问题是inserted.I有一个错误,错误的数据:未定义的变量:帖子(查看:C :\ xampp \ htdocs \ myproject11 \ resources \ views \ class.blade.php) 为什么我要面对这个问题?

+0

看看你的class.blade.php,有一个未定义的变量:posts如所述 – SteD

+0

是的,但我认为没有问题..因为这一刻我也不能给一个状态。但在过去它的作品很好......当我使用第二路线和控制器时,我面临这个问题 – Shuvo

回答

0

根据你的第二条评论,你正在返回视图没有'帖子'showclassdata方法。

return view('class'); 

这就是为什么你reciving错误:

比较

的getclass方法:

return view('class',[ 
'posts'=>status::orderBy('id','DESC')->get() 
]);} 

showclassdata方法。

解决方案是在showclassdata方法返回您的帖子与视图。

+0

是的,我修好了。 – Shuvo

+0

所以你应该接受答案。 –

+0

我已经接受了先生。 – Shuvo