【问题标题】:Laravel route returning public folderLaravel 路由返回公用文件夹
【发布时间】:2016-02-24 02:37:26
【问题描述】:

我有一个简单的 Laravel 项目。在路由中,我指定 / 返回 index.php 视图。现在,我希望通过在链接中添加更多内容来使用图像、css 等来定向到我的公共文件夹,比如/css/index.css 会返回给我localhost/projects/myproject/public/css/index.css 我如何通过/ 到达/public 文件夹?

【问题讨论】:

标签: php laravel routes laravel-5


【解决方案1】:

第一种方法

使用它可以将 cssjavascriptimages.. 等资产添加到刀片文件中。

对于 CSS,

<link href="{{ asset('css/app.css') }}" rel="stylesheet" type="text/css" >

<link href="{{ URL::asset('css/app.css') }}" rel="stylesheet" type="text/css" >

对于 JS,

<script type="text/javascript" src="{{ asset('js/custom.js') }}"></script>

 <script type="text/javascript" src="{{ URL::asset('js/custom.js') }}"></script>

图片,

{{ asset('img/photo.jpg'); }}

这里是Laravel Doc

参考:https://stackoverflow.com/a/28214659/2117868


第二种方法

或者您可以使用此语法添加cssjavascript,方法是添加laravelcollective 包并注册服务提供者和别名

那么,

{!! HTML::style('link/to/your/css/file.css') !!}
{!! HTML::script('link/to/your/js/file') !!}

记住这里{!! HTML::style() !!}会直接指向public目录下的文件。

因此,写入{!! Html::style('style.css') !!} 将指向style.css 目录中的style.css 文件。

【讨论】:

    【解决方案2】:

    你的路由应该有一个闭包或对控制器函数的调用。例如

    Route::get('/', function()
    {
         return 'some message'
    });
    

    Route::get('/', SomeController@somefunction);
    

    如果您要返回视图,我建议使用第二个选项(因为显然生成没有动态数据的视图是对框架的浪费)。所以如果你这样做,你会得到类似的东西:

    <?php namespace App\Http\Controllers;
    
    use App\Http\Controllers\Controller;
    
    use Illuminate\Http\Request;
    
    class SomeController extends Controller {
    
    public function somefunction()
    {
     //fetch some data if required
      return view('index');//which is a file under resources/views namely index.blade.php
    }
    

    现在在您的 index.blade.php 中,您可以像在普通 HTML 页面中一样调用您的 css,但如果您希望它以 laravel 方式使用,您应该:

    {!! HTML::style('link/to/your/css/file.css') !!}
    
    {!! HTML::script('link/to/your/js/file') !!}
    

    但请确保如果您使用的是第二种方法,您应该需要 laravelcollective 包并注册他的服务提供者和别名

    【讨论】:

      猜你喜欢
      • 2016-09-02
      • 2016-09-19
      • 1970-01-01
      • 2014-08-13
      • 2015-12-12
      • 2017-11-16
      • 1970-01-01
      • 2013-08-07
      • 2016-08-31
      相关资源
      最近更新 更多