2020-12-20に投稿

laravel6.xでbootstrapを使う

laravel6.x以降にbootstrapを入れる

laravel6.xからは、bootstrapがデフォルトで入っていないので、自分で入れてあげる必要があるらしい。
調べたところ、以下のコマンドを実行すれば良さそう。

composer require laravel/ui
php artisan ui bootstrap
npm install && npm run dev

これでうまく行けばおしまい。

しかし現実は甘くなかった

案の定composer requireの時点でエラーになった。

Using version ^2.0 for laravel/ui
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

Problem 1
    - Conclusion: remove laravel/framework v6.18.1
    - Conclusion: don't install laravel/framework v6.18.1
    - laravel/ui 2.x-dev requires illuminate/filesystem ^7.0 -> satisfiable by illuminate/filesystem[7.x-dev, v7.0.0, v7.0.1, v7.0.2, v7.0.3, v7.0.4, v7.0.5, v7.0.6, v7.0.7, v7.0.8, v7.1.0, v7.1.1]

# 以下略

要は、「 laravel/ui2.0はLaravel7じゃないといけないけど、君の環境はそれを満たしてないよ!」とのこと。

https://packagist.org/packages/laravel/ui
↑によると、それぞれの対応バージョンは以下のようになっている。

Version Laravel Version
1.x 5.8, 6.x
2.x 7.x
3.x 8.x

つまり、laravel6.xで使うには2.xではなくて1.xを入れないといけない。
というわけで、以下のようにバージョンを明記してインストールし直し。

composer require laravel/ui:1.3.0

次に、/var/www/html/vendor/laravel/ui/src/Presets/Bootstrap.phpの中のパスを以下の様に変更

copy(__DIR__.'/bootstrap-stubs/_variables.scss', resource_path('assets/sass/_variables.scss'));
copy(__DIR__.'/bootstrap-stubs/app.scss', resource_path('assets/sass/app.scss'));

copy(__DIR__.'/bootstrap-stubs/bootstrap.js', resource_path('assets/js/bootstrap.js'));

これで再度

php artisan ui bootstrap
npm install && npm run dev

これで入った。

ツイッターでシェア
みんなに共有、忘れないようにメモ

みみみみみ

1歳と7ヶ月くらいの赤ちゃんです。

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント