I want to do something I don't know if it is feasible.
here's my routes.php
Route::get('mockups/user/skills/{skill}', 'MockupsController@user');
Route::get('mockups/user/tours/{tour}', 'MockupsController@user');
Route::get('mockups/user', 'MockupsController@user');
and my MockupsController@user function
public function user($skill=null,$tour=null){
if($tour ==null && $skill != null)
return View::make('demo/mockups/user/public',array('skill'=>$skill));
if($tour!=null && $skill ==null)
return View::make('demo/mockups/user/public',array('tour'=>$tour));
return View::make('demo/mockups/user/public');
}
if I get the /mockups/user/tours/tour1
url, the controller calls the demo/mockups/user/public
view without sending the $tour
variable. how to make it works?
EDIT
public function user($skill=null,$tour=null){
echo var_dump($skill);
echo var_dump($tour);
die();
if($tour ==null && $skill != null)
return View::make('demo/mockups/user/public',array('skill'=>$skill));
if($tour!=null && $skill ==null)
return View::make('demo/mockups/user/public',array('tour'=>$tour));
return View::make('demo/mockups/user/public');
}
displays
string(5) "tour1" NULL
I dont understand why you are making it so complicated. Why not just do
Route::get('mockups/user/skills/{skill}', 'MockupsController@skills');
Route::get('mockups/user/tours/{tour}', 'MockupsController@tours');
Route::get('mockups/user', 'MockupsController@user');
public function skills($skill)
{
return View::make('demo/mockups/user/public',array('skill'=>$skill));
}
public function tours($tour)
{
return View::make('demo/mockups/user/public',array('tour'=>$tour));
}
public function user()
{
return View::make('demo/mockups/user/public');
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.