2016-11-24 99 views
0

我正在使用L5.2。Handler.php中的NotFoundHttpException第103行:

我忙於試圖創建一個購物車,我遇到了一個問題,我似乎無法弄清楚它是如何發生的。

假設發生的事情是在我將產品添加到購物車後,我點擊購物車鏈接,然後我想轉到另一頁上,在頁面上顯示「getCart」。

發生了什麼事情是,一旦我點擊購物車鏈接,我會得到下面的錯誤,如果我只是迴應「getCart」,我看不出如何得到那個錯誤。

我得到的錯誤是

NotFoundHttpException在Handler.php行103:無查詢結果的模型[應用程序\模塊\菜單\型號\菜單。

我routes.php文件

Route::resource('/', 'OpenController'); 
Route::get('/{id}', '[email protected]'); 

Route::get('/add-to-cart/{id}', [ 
    'uses' => '[email protected]', 
    'as' => 'product.addToCart' 
]); 

Route::get('/shopping-cart', [ 
    'uses' => '[email protected]', 
    'as' => 'product.shoppingCart' 
]); 

我OpenController.php

namespace App\Modules\Open\Http\Controllers; 

use App\Http\Requests; 
use App\Http\Controllers\Controller; 
use Illuminate\Http\Request; 

use App\Modules\Menus\Models\Menu; 
use App\Modules\Portfolio\Models\Portfolio; 
use App\Modules\Products\Models\Product; 
use App\Modules\Open\Models\Cart; 
use Session; 

class OpenController extends Controller 
{ 

    public function getAddToCart(Request $request, $id){ 
     $product = Product::find($id); 
     $oldCart = Session::has('cart') ? Session::get('cart') : null; 
     $cart = new Cart($oldCart); 
     $cart->add($product, $product->id); 

     $request->session()->put('cart', $cart); 
     return redirect()->back(); 
    } 

    public function getCart(){ 
     echo "getCart"; 
    } 
} 

products.blade.php

<li> 
    <a href="{{ route('product.shoppingCart') }}"> 
     <i class="fa fa-shopping-cart" aria-hidden="true"></i> Shopping Cart 
     <span class="badge">{{ Session::has('cart') ? Session::get('cart')->totalQty : '' }}</span> 
    </a> 
</li> 

UPDATE:

我已經設法解決它,但我希望有人仍然可以幫助我。

我改變了我的路線從

Route::get('/shopping-cart', [ 
    'uses' => '[email protected]', 
    'as' => 'product.shoppingCart' 
]); 

Route::get('/products/shopping-cart', [ 
    'uses' => '[email protected]', 
    'as' => 'product.shoppingCart' 
]); 

有人可以解釋爲什麼它不會只用/購物推車

回答

0

這是行不通的,因爲工作「/ products/shopping-cart」是不同於「/ shopping-cart」的路線。 而且由於您呼叫路線「product.shoppingCart」,您還必須聲明該路線。

希望解釋一下。

相關問題