即使我已正确设置路由,也会加载不同的默认模板

时间:2015-09-28 12:32:52

标签: php laravel-4

views文件夹中我有layouts/main.blade.phpstore/index.blade.php下我正在使用布局文件:

@extends('layouts.main') // importing here.

@section('promo')

    <section id="promo">
        <div id="promo-details">
            <h1>Today's Deals</h1>
            <p>Checkout this section of<br/>
             products at a discounted price.</p>
            <a href="#" class="default-btn">Shop Now</a>
        </div><!-- end promo-details -->
        {{ HTML::image('img/promo.png' , 'Promotional Ad') }}
    </section><!-- promo -->

@stop

@section('content')


      <h2>New Products</h2>
      <hr>
      <div id="products">
          @foreach($products as $product)
          <div class="product">
              <a href="store/view/{{ $product->id }}">
                {{ HTML::image($product->image , $product->title , array('class'=>'feature' ,
                'width'=>'240' , 'height'=>'127')) }}
              </a>

              <h3>
                <a href="/store/view/{{ $product->id }}">
                  {{ $product->title }}
                </a>
              </h3>

              <p>
                {{ $product->description }}
              </p>

              <h5>Availability:
                <span class="{{ Availability::displayClass($product->availability) }}">
                  {{ Availability::display($product->availability) }}
                </span>
              </h5>

              <p>
                  <a href="#" class="cart-btn">
                      <span class="price">${{ $product->price }}</span>
                       {{ HTML::image('img/white-cart.gif' , 'Add to Cart') }}
                        ADD TO CART
                  </a>
              </p>
          </div>
          @endforeach
      </div>  <!-- end products -->
@stop

在我的storeController中,我正在调用store/index.blade.php文件,如下所示:

 public function getIndex() {
        return View::make('store.index')
          ->with('products' , Product::take(4)->orderBy('created_at' , 'DESC')->get());
      }

在我的路由文件中,我有以下内容:

Route::get('/',  array('uses' => 'StoreController@getIndex'));

但是当我加载/时,我得到的是其他模板,而不是layouts/main.blade.php。为什么会这样?谁能解释一下?

为什么我在浏览器中点击layouts/main.blade.php时未加载/

谢谢。

亚历-Z。

1 个答案:

答案 0 :(得分:0)

我有以下语法。

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
        {{ HTML::style('css/bootstrap.css') }}
        {{ HTML::style('css/animate.min.css') }}
        {{ HTML::style('css/style.css') }}
        {{ HTML::style('css/nprogress.css') }}
        {{ HTML::style('css/new-arrivals.css') }}

删除以下行

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">

解决了我的问题......为什么呢?另外我如何在开发期间禁用laravel中的缓存?