Невозможно добавить пакет spatie/laravel-slugable в laravel 5.4

Я попытался добавить spatie/laravel-suggable в свои настройки, но столкнулся с этой ошибкой в ​​терминале. Я пытался найти это, но не нашел подходящего решения.

Вот ошибка:

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.

Я также пытался добавить illuminate/database, но это также показало ту же проблему.


person Mohd Samgan Khan    schedule 26.02.2019    source источник


Ответы (3)


Вы всегда можете проверить требования пакета в его файле composer.json.

Например, в вашем случае вы можете проверить composer.json здесь: https://github.com/spatie/laravel-sluggable/blob/master/composer.json#L18#L23

Вы можете заметить это:

"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"
},

Здесь указывается минимальная требуемая версия PHP, а также упоминаются требования к версиям пакетов illuminate/database и illuminate/support, то есть 5.5, 5.6 и 5.7 и выше.

Эти пакеты освещения предназначены для Laravel. Это основные пакеты фреймворка Laravel, поэтому их версия должна совпадать с вашей версией laravel.

Вы не можете установить старый пакет освещения в более новую версию Laravel.

Я бы посоветовал вам обновить Laravel до 5.5 или до последней версии. Spatie и их пакеты в большинстве случаев обновлены, поэтому вам лучше обновить и свои.

person Pankaj    schedule 26.02.2019

Этот пакет spatie/laravel-sluggable требует:

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

Вы не можете установить этот пакет в свою структуру laravel 5.4.

Если вы хотите использовать это (spatie/laravel-sluggable), вам нужно laravel 5.5 или выше.

Если у вас Laravel 5.5 или выше, вы можете запустить эту команду в командной строке:

composer require spatie/laravel-sluggable

Это создаст последнюю версию для вашего проекта.

person Udhav Sarvaiya    schedule 26.02.2019

Если вы не хотите обновляться до Laravel 5.5, вы можете установить версию 1.5.2 из spatie/laravel-sluggable, совместимого с Laravel 5.4.

composer require spatie/laravel-sluggable "^1.5"
person Furgas    schedule 26.02.2019
comment
Я решил обновить laravel, так как @pankaj сказал, что лучше обновить, иначе эта проблема может повториться в будущем. Спасибо, в любом случае. - person Mohd Samgan Khan; 26.02.2019