web-dev-qa-db-fra.com

Dans Laravel 5, quelle est la différence entre {{url}} et {{asset}}?

Je trouve parfois que les deux sont OK? Alors, quelle est vraiment la différence?

Par exemple,

<link rel="stylesheet" href="{{asset('resources/views/admin/style/css-ui.admin.css')}}">

et

<link rel="stylesheet" href="{{url('resources/views/admin/style/font/css/font-awesome.min.css')}}">

ces deux formes sont à la fois OK.

Alors, quelles sont les différences?

13
无名小路

Décider quel assistant URL utiliser

Tenez compte du type d'URL nécessaire/de la façon dont l'URL est utilisée. L'un des avantages d'avoir des méthodes d'assistance distinctes pour chaque type d'URL est qu'elles peuvent avoir une logique de gestion différente. Par exemple, les actifs (par exemple CSS, images, etc.) pourraient impliquer une vérification que le fichier existe dans le système de fichiers mais ne nécessitent pas le type d'analyse qu'une route aurait car la route peut avoir des paramètres.

rl () Génère une URL absolue vers le chemin donné (code)

  • À utiliser pour les URL statiques (qui devraient être rares).
  • Accepte un tableau de paramètres codés et ajoutés à la fin du domaine.
  • Préserve tout chaîne de requête URL .

    {{ url('search') }}
    // http://www.example.com/search
    
    {{ url('search', ['qevo', 'laravel']) }}
    // http://www.example.com/search/qevo/laravel
    

asset () Génère une URL vers un actif d'application (code)

  • À utiliser pour les fichiers directement servis tels que CSS, images, javascript.
  • Accepte uniquement un chemin direct.

    {{ asset('css/app.css') }}
    // http://www.example.com/css/app.css
    

route () Obtient l'URL vers une route nommée (code)

  • À utiliser pour chaque itinéraire (chaque itinéraire doit être nommé pour faciliter les changements de chemin à l'avenir).
  • Nécessite routes nommées .
  • Accepte le tableau associatif pour les paramètres de route.
  • Permet de remplacer l'itinéraire relatif par rapport à l'itinéraire absolu (par défaut).

    {{ route('user.profile', ['name'=>'qevo']) }}
    // http://www.example.com/user/qevo/profile
    
    {{ route('user.profile', ['name'=>'qevo'], false) }}
    // /user/qevo/profile
    
27
Qevo

{{url}} vous permet de créer un lien vers une URL sur votre site - un autre avantage est le fait que vous pouvez définir le deuxième paramètre sur un tableau contenant des paramètres de chaîne de requête.

{{asset} vous permet simplement de créer un lien vers un élément de votre répertoire public - par exemple css/main.css.

10
Connor Gurney

asset() La méthode est utilisée pour inclure des fichiers CSS/JavaScript/images.

url() méthode utilisée pour générer une URL vers un lien.

Exemple d'actif:

ce serait

<script src="{{ asset('js/jquery.min.js') }}"></script>

Exemple d'URL:

ce serait

{{ url('image/welcome.png') }}
2
Fefar Ravi

URL::route Obtient l'URL d'une route nommée. Donc, dans votre cas, si vous nommez votre itinéraire comme ceci:

Route::get('/account/register', [
    'name' => 'register', 
    'uses' => 'RegisterController@create'
]);

alors vous pourrez utiliser

<a href="{{ URL::route('register') }}" >Register 1</a> dans les modèles de lame.

0
tisuchi