2
votes

Impossible d'ajouter le package spatie / laravel-sluggable dans laravel 5.4

J'ai essayé d'ajouter spatie / laravel-sluggable dans ma configuration mais j'ai rencontré cette erreur dans le terminal. J'ai essayé de rechercher ceci mais je n'ai trouvé aucune solution pertinente.

Voici l'erreur:

Problem 1
    - Conclusion: remove laravel/framework v5.4.36
    - Conclusion: don't install laravel/framework v5.4.36
    - spatie/laravel-sluggable 2.1.0 requires illuminate/database ~5.5.0 
      -> satisfiable by illuminate/database[v5.5.0, v5.5.16, v5.5.17, v5.5.2, v5.5.28, v5.5.33, v5.5.34, v5.5.35, v5.5.36, v5.5.37, v5.5.39, v5.5.40, v5.5.41, v5.5.43, v5.5.44].
    - spatie/laravel-sluggable 2.1.5 requires illuminate/database ~5.5.0|~5.6.0|~5.7.0 
      -> satisfiable by illuminate/database[5.7.17, 5.7.18, 5.7.19, v5.5.0, v5.5.16, v5.5.17, v5.5.2, v5.5.28, v5.5.33, v5.5.34, v5.5.35, v5.5.36, v5.5.37, v5.5.39, v5.5.40, v5.5.41, v5.5.43, v5.5.44, v5.6.0, v5.6.1, v5.6.10, v5.6.11, v5.6.12, v5.6.13, v5.6.14, v5.6.15, v5.6.16, v5.6.17, v5.6.19, v5.6.2, v5.6.20, v5.6.21, v5.6.22, v5.6.23, v5.6.24, v5.6.25, v5.6.26, v5.6.27, v5.6.28, v5.6.29, v5.6.3, v5.6.30, v5.6.31, v5.6.32, v5.6.33, v5.6.34, v5.6.35, v5.6.36, v5.6.37, v5.6.38, v5.6.39, v5.6.4, v5.6.5, v5.6.6, v5.6.7, v5.6.8, v5.6.9, v5.7.0, v5.7.1, v5.7.10, v5.7.11, v5.7.15, v5.7.2, v5.7.20, v5.7.21, v5.7.22, v5.7.23, v5.7.26, v5.7.27, v5.7.3, v5.7.4, v5.7.5, v5.7.6, v5.7.7, v5.7.8, v5.7.9].
    - spatie/laravel-sluggable 2.1.6 requires illuminate/database ~5.5.0|~5.6.0|~5.7.0 
      -> satisfiable by illuminate/database[5.7.17, 5.7.18, 5.7.19, v5.5.0, v5.5.16, v5.5.17, v5.5.2, v5.5.28, v5.5.33, v5.5.34, v5.5.35, v5.5.36, v5.5.37, v5.5.39, v5.5.40, v5.5.41, v5.5.43, v5.5.44, v5.6.0, v5.6.1, v5.6.10, v5.6.11, v5.6.12,
    - don't install illuminate/database v5.5.0|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.16|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.17|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.2|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.28|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.33|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.34|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.35|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.36|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.37|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.39|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.40|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.41|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.43|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.5.44|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.6.0|don't install laravel/framework v5.4.36
    - don't install illuminate/database v5.6.1|don't install laravel/framework v5.4.36
    - Installation request for laravel/framework (locked at v5.4.36, required as 5.4.*) 
      -> satisfiable by laravel/framework[v5.4.36].
    - Installation request for spatie/laravel-sluggable ^2.1 
      -> satisfiable by spatie/laravel-sluggable[2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6].


Installation failed, reverting ./composer.json to its original content.

J'ai également essayé d'ajouter illuminate / database code> mais il a également montré le même problème.


0 commentaires

3 Réponses :


2
votes

Ce package spatie / laravel-sluggable nécessite:

composer require spatie/laravel-sluggable

Vous ne pouvez pas installer ce package dans votre framework laravel 5.4

Si vous souhaitez utiliser ceci ( spatie / laravel-sluggable ) alors vous avez besoin de laravel 5.5 ou version supérieure.

Si vous avez Laravel 5.5 ou supérieur, vous pouvez exécuter cette commande à l'invite de commande:

php: >=7.0.0
illuminate/database: ~5.5.0|~5.6.0|~5.7.0
illuminate/support: ~5.5.0|~5.6.0|~5.7.0

Cela générera la dernière version de votre projet


0 commentaires

2
votes

Vous pouvez toujours vérifier les exigences d'un package dans son fichier composer.json .

Par exemple, dans votre cas, vous pouvez vérifier le composer.json Ici: https://github.com/spatie/laravel- sluggable / blob / master / composer.json # L18 # L23

Vous pouvez remarquer ceci:

"require": {
    "php" : ">=7.0.0",
    "illuminate/database": "~5.5.0|~5.6.0|~5.7.0",
    "illuminate/support": "~5.5.0|~5.6.0|~5.7.0"
},

Ici, il indique le minimum de PHP version requise et mentionne également l'exigence de version du package illuminate / database et illuminate / support , qui est 5.5 , 5.6 et 5.7 et supérieur.

Ces paquets illuminate sont pour Laravel. Ce sont les packages de base du framework Laravel, donc leur version doit correspondre à votre version laravel.

Vous ne pouvez pas installer l'ancien paquet illuminate sur la nouvelle version de Laravel.

Je vous suggère de mettre à jour votre Laravel vers 5.5 ou vers la dernière. Spatie et ses packages sont la plupart du temps à jour, vous feriez donc mieux de mettre à jour le vôtre également.


0 commentaires

1
votes

Si vous ne souhaitez pas mettre à niveau vers Laravel 5.5, vous pouvez installer la version 1.5.2 de spatie / laravel-sluggable qui est compatible avec Laravel 5.4.

composer require spatie/laravel-sluggable "^1.5"


1 commentaires

J'ai décidé de mettre à jour le laravel car @pankaj a dit qu'il était préférable de mettre à jour sinon ce problème pourrait se reproduire à l'avenir. Merci quand même.