在我的Laravel 5.2 CRUD应用程序中,导航菜单位于每个子视图继承的自己的布局中。
但是,对于通过其RESTful资源控制器访问的其中一个子视图(create.blade.php),导航菜单上的每个链接都会更改。
E.g。当我在主页和 mywebsite.dev/books 页面时,HOME链接显示 mywebsite.dev/home 。
但是,当我到 mywebsite.dev/books/create 时,所有导航项目现在都有 mywebsite.com/books / 。所以例如从“创建新书”页面单击“关于”页面,转到 mywebsite.dev/books/about ,而不是转到 mywebsite.dev/books 。有趣的是,只有BOOKS页面的链接是正确的,并说 mywebsite.dev/books
在我的导航中,HOME,BOOKS和ABOUT页面列为href =“/”href =“/ books”和href =“/ about”
任何想法为什么会如此?
编辑: 我的BooksController:
public function index()
{
// get all the books
$books = Book::all();
// load the view and pass the books
return View::make('books.index')->with('books',$books);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return View::make('books.create');
}
这是routes.php:
Route::auth();
Route::get('/', 'HomeController@index');
Route::get('auth/logout', 'Auth\AuthController@getLogout');
Route::get('/home', 'HomeController@index');
Route::resource('books','BookController');
答案 0 :(得分:1)
您应该在视图中使用url()
帮助器。因此,它可以确保您获得绝对链接。
<a href="{{ url('/about') }}">About</a>
<a href="{{ url('/books') }}">Books</a>
<a href="{{ url('/') }}">Home</a>