20200711のlaravelに関する記事は9件です。

syntax error, unexpected end of file が出たので原因を探した

使用しているPCはMacbook
エディタはvscodeです。

syntax error, unexpected end of file

やったこと
ターミナルで
php artisan make:controller ~
を入力した際に上記エラーが出た

エラーの上に

In web.php line 20:

が記載されていた

web.phpファイルを中途半端に書いていたため、エラーが出たようだ
原因となっている部分をコメントアウトして
もう一度
php artisan make:controller ~
を打った

Controller created successfully.
が出て目的のコントローラーを作成できた。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【Laravel】Viewに値を渡す方法は結局どれが良いのか

個人的な結論

配列に突っ込んでまとめて渡す

値を渡す方法

①withで渡す

HogeController.php
public function test() {
    $hoge = "hoge";

    return view("index")->with("hoge", $hoge);
}

ひとつならまあいいでしょう。

HogeController.php
public function test2() {
    $hoge = "hoge";
    $fuga = "fuga";
    $piyo = "piyo";

    return view("index")
        ->with("hoge", $hoge)
        ->with("fuga", $fuga)
        ->with("piyo", $piyo);
}

もしくは

HogeController.php
public function test2() {
    return view("index")->with([
        "hoge" => "hoge",
        "fuga" => "fuga",
        "piyo" => "piyo",
    ]);
}

問題点

複数は見づらいし冗長になって面倒くさい。
配列でまとめるなら後述する方法の方がスッキリする。

②compactで渡す

HogeController.php
public function test() {
    $hoge = "hoge";

    return view("index", compact("hoge"));
}
HogeController.php
public function test2() {
    $hoge = "hoge";
    $fuga = "fuga";
    $piyo = "piyo";

    return view("index", compact("hoge", "fuga", "piyo"));
}

良い点

さっきよりだいぶすっきりした。スマートな感じがする。
キーと値の両方を書く必要がない分、記述が減る。

問題点

viewで展開することを考えた変数宣言が必要。
(実際には同じ名前にすることが多いし、そろってた方が綺麗なので一概に悪いとも言えない。)

PHP7.3でcompact()の仕様が変わったので、
変数がない文字列を引数に与えるとエラーになるため注意が必要。
https://www.php.net/manual/ja/function.compact.php

HogeController.php
public function test2() {
    $hoge = "hoge";
    $fuga = "fuga";

    return view("index", compact("hoge", "fuga", "piyo")); // piyoがないのでエラーになる
}

③配列で渡す

HogeController.php
public function test() {
    $data["hoge"] = "hoge";

    return view("index", $data);
}
HogeController.php
public function test2() {
    $data = [
        "hoge" => "hoge",
        "fuga" => "fuga",
        "piyo" => "piyo",
    ];
    return view("index", $data);
}

良い点

viewに渡している値がパッと見で分かりやすい。
return view()が常に同じ形になるため、統一感が出る。
view()の後ろがごちゃごちゃするのが個人的に好きじゃない。

問題点

問題というか、なんとなくスマートな感じはしない。

まとめ

個人的には
③ → ② → ①
の順に書きやすいし、分かりやすいです。

ちなみに
僕が未経験エンジニアとして入った会社で見たコードが、

HogeController.php
public function test2() {
    $test = "test";

    $data["hoge"] = "hoge";
    $data["fuga"] = "fuga";
    $data["piyo"] = "piyo";

    return view("index", $data)
        ->with("test", $test);
}

みたいな感じでした。(特に意図があったわけではないらしい)
違和感を感じるまで少しかかってしまった。
さすがにこれはないと思い、忘備録として残した次第です。

結局主観も入っているので正解はないですが、
プロジェクトとして統一されていればどの書き方でも問題ないかなと。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

一つ目のサービスを作ってから、感じたこと/サービスを作りなおした話

1カ月前に「みんなでコードレビュー」というサービスを作りました~~

■参考記事
https://qiita.com/shibaHaya/items/734d5e2cd22f7e7d9576

このサービスは、自分のコードをレビューしてもらったり、軽い感じでレビューするサービスを想定して作ってみたものでした:relaxed:

経過 :man:

Qiitaに記事を書いて、「LGTM」をたくさんもらえて、それなりの流入がありました。
しかし、日がたつにつれサイトの訪問者はどんどん減っていきました:runner_tone5:

原因 :frowning2:

・サービス開始時に、それほど質問の量がないので、見に来る人も少なくなる(なので期間がかかる)
・そもそもこのサービスに人がいないので、コードを載せても答えが返ってこない、使わない
・コードレビューなら、普通Githubなどを使うし、軽い感じでコードレビューしてもらいたいって人があまりいないので、需要がない
・見た目が使いにくい
・そもそも知られてない

まあ、主な点はこんな感じだろう??と思う。。:ok_woman_tone3:

少し対策してみる:dancer_tone4:

なにか苦し紛れな感じで、追加機能をつけてみた。

・通知機能
・アイコン入力機能
・Best Answer
・そもそも機能を改修し、自分のコードを自分でレビューするようなサービスにしてみたりした。

その時の気持ち

少し使いやすさは改善したように思うが、なんかやっていて意味があるのかな~?:skull:
そもそも、「自分このサービス使わないしな~」とか思ってた。

だいぶモチベーションが下がっていたとき、「Google Adsense」の合格メールが来た:angel:
「まあ、広告はっといたら、1円ぐらいは、かせげるのかな~」と思い、機能開発はストップしていたが、広告だけ貼ってみた。

すると、次の日に「100円」の収益がついていた。
「え、100円も稼げるの?」ってだいぶモチベーションが上がった:heart_eyes_cat:

自分が感じたこと

自分は最初、作るのは楽しいし、とりあえず作って、人が集まったら、広告でも貼って、ちょっとは収益になるかな~と思っていた:fist_tone5:

実際作ったまでは、楽しかったが、それ以降の「機能追加・改修」はあんまりモチベーションが続かなかった。

そもそも僕は、月6万ぐらいかせげたら、田舎のおじいちゃん・おばあちゃんの家で暮らして、そこで開発したいな~と思っている。
僕にとっては収益が重要ぽいので、100円稼げたときは、自分が想像するよりもモチベーションが上がった。:hugging:

結果、自分の性格的に、サービス開発を続ける / このサービス継続して長く公開しとこうと思えるモチベーション優先順位は、

  1. 収益
  2. サービスの新規開発の楽しさ
  3. 収益がない場合でも、自分が使えるもので、あまり大きな改修や追加機能の手間がないもの (これはサービスの目的をしっかり決めてたら達成できそう)

こんな感じだと思う。 多分:v:

収益があれば、機能改修のモチベーションも湧くが、今の「みんなでコードレビュー」は、自分も使わない(3番も未達成)し、人が全然いないので、1番も達成できなそう。2番はもう使い終わったし。。

1番は、ハードルが高いので、とりあえず3番を達成できそうなサービスに作り替える:thumbsup:

自分が開発するときのメモを、webで保存できて後から見直せるサービスに作り替える。

自分が使うサービスを作ろうと思ったので、これにした。

機能的には、「みんなでコードレビュー」で実装したものを削っていけばできるから、簡単だった。

・自分のメモを残せるようにする
・ログイン
・お気に入り/いいね
・メモをちょっとカラフル:alarm_clock:に(codeなんかものせられる)
・マイページ

でも、見た目がダサいので、これだと自分もつかわなくなるかもと思ったので、見た目を改善する:night_with_stars:

デザインテンプレートを参考に使ってみる

自分のデザイン力は、絶望的:thermometer_face:なので、これを利用すれば手っ取り早くかっこよくなる。
調べると、ほんとうにいっぱいあってありがたい。

今回参考にしたサイトは、「https://template-party.com/」

利用規約を読むと、

テンプレート下部に入っているWeb Design:Template-Party(もしくは「Produced by Girl Staff」か「Web Design:Template-Party&> Girl-Staff」等の表記である場合あり)の文字とリンクは外さずにご利用下さい。その他は自由にカスタマイズして頂いて構いません

だったので、必要な機能だけ残してカスタマイズさせてもらった。:soccer:
見た目はこんな感じ

エンジニアメモ - Google Chrome 2020_07_11 13_55_26 (2).png

前よりめちゃいい。つぎからこういったサイトを作るときはテンプレートを利用しよ!:guardsman_tone3:

サイト内の色を決める

僕はとりあえず、オレンジをメインにてきとうに決めていたが、すごく見えづらかった。
調べてみると、世の中には配色デザインを提供してくれるサービスがあるらしい。

そんな中で今回利用したのが、「PALETTABLE

何百万人のデザイナーの配色知識を詰めこんだツールで、組み合わせも考えられた色を、好きか嫌いを選ぶだけで直感的に探し出してくれる。

このサービスを使って、5色決めたことにより、見た目がきれいになった。

回収したサイト

エンジニアメモ

これなら、自分も使いそう:massage:

まとめ

今回のことで、自分が何にモチベーションをもっているのか少しわかった。
このサービスは、完了したので、次のサービスを作りたい:man_tone1:

今度は、ドメイン名以外すべて無料で開発しようと思う。
記事を読んでくれて、ありがとうございました:bow_tone2:

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Laravelでvueを書く時のimage参照方法

vueで画像を表示する時はimgタグとbackground-imageを使う場合が考えられる。
ビミョーにやり方が違うので、備忘録として書いておきます。

imgタグを書く場合

Index.vueなど、vueファイルでimgタグを書く時は以下のように書く。

<img :src="'/images/top-appeal.jpg'" alt="" class="c-img">
やること

srcをv-bindする
②srcのダブルクォーテーション内部にシングルクォーテーションを書く
③vueファイルはトランスパイルされpublic/がディレクトリとしての起点になるので、そこからの相対パスを入力する。上記サンプルは、↓の画像を参照していることになる。
image.png

background-imageを書く場合

vueファイルのstyleタグ内でbackground-imageを書く時は、以下のようにする。

background-image: url('../image/hero-baner.jpeg');
やること

①画像ファイルをresourcesディレクトリ(scssやvueを置く場所)内に置く。
②vueでbackground-imageを書く時に、resourcesディレクトリを起点にした相対パスを書く。
↑の場合、↓の画像を参照している。
npm run watchなどでコンパイルした時にpublic/imagesに同様の画像をコピーが作られているのがわかるハズ。
image.png

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Laravel + vueで画像を参照する時の書き方

vueで画像を表示する時はimgタグとbackground-imageを使う場合が考えられる。
ビミョーにやり方が違うので、備忘録として書いておきます。

imgタグを書く場合

Index.vueなど、vueファイルでimgタグを書く時は以下のように書く。

<img :src="'/images/top-appeal.jpg'" alt="" class="c-img">
やること

srcをv-bindする
②srcのダブルクォーテーション内部にシングルクォーテーションを書く
③vueファイルはトランスパイルされpublic/がディレクトリとしての起点になるので、そこからの相対パスを入力する。上記サンプルは、↓の画像を参照していることになる。
image.png

background-imageを書く場合

vueファイルのstyleタグ内でbackground-imageを書く時は、以下のようにする。

background-image: url('../image/hero-baner.jpeg');
やること

①画像ファイルをresourcesディレクトリ(scssやvueを置く場所)内に置く。
②vueでbackground-imageを書く時に、resourcesディレクトリを起点にした相対パスを書く。
↑の場合、↓の画像を参照している。
npm run watchなどでコンパイルした時にpublic/imagesに同様の画像をコピーが作られているのがわかるハズ。
image.png

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Laravel アプリケーションファイルを$ git clone 後に実施することメモ

目的

  • LaravelアプリをGitHubからcloneした後に実施しないといけないことを毎回忘れるので自分用にまとめる

実施環境

  • ハードウェア環境
項目 情報
OS macOS Catalina(10.15.5)
ハードウェア MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)
プロセッサ 2 GHz クアッドコアIntel Core i5
メモリ 32 GB 3733 MHz LPDDR4
グラフィックス Intel Iris Plus Graphics 1536 MB
  • ソフトウェア環境
項目 情報 備考
PHP バージョン 7.4.3 Homwbrewを用いて導入
Laravel バージョン 7.0.8 commposerを用いてこちらの方法で導入→Mac Laravelの環境構築を行う
MySQLバージョン 8.0.19 for osx10.13 on x86_64 Homwbrewを用いてこちらの方法で導入→Mac HomebrewでMySQLをインストールする

することその1 DBの作成

  1. 下記コマンドを実行してMySQLにログインする。(MySQLのrootユーザのパスワードを忘れてしまった方はこちら→Mac ローカル環境の MySQL 8.0 のrootパスワードを忘れた時のリセット方法)

    $ mysql -u root -p
    
  2. 下記を実行してDBを作成する。

    create database 作成するDB
    

することその2 .envファイルの用意

  1. cloneしてきたディレクトリで.envファイルの作成をする。
  2. cloneしてきた環境の用の.envファイルがGit管理されていない場合は下記のコマンドを実行して.envファイルの例になるファイルから作成する。

    terminal
    cp .env.example .env
    `
    1. .envファイル作成後はcloneした環境に合った設定を記載する。(MySQLのユーザ名やパスワード、DB名など)

することその3 composer install

  1. cloneしてきたディレクトリで下記コマンドを実行してcomposer installを実行する。

    $ composer install
    

することその4 アプリキーの作成

  1. cloneしてきたディレクトリで下記コマンドを実行してアプリキーの作成を行う。

    $ php artisan key:generate
    
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【Laravel】usersテーブルにカラムを追加する

内容

はじめにマイグレーションを行うと、usersテーブルにnameとemailなどができるが、プロフィールを作成しようとすると、性別や年齢、自己紹介文などが欲しくなります。
そこで、既存のusersテーブルにカラムを追加する作業を行います。

前提

laravel7で行います。
すでにマイグレーションを行っているものとします。

% php artisan migrate

 方法

  1. マイグレーションファイルを作成
  2. カラムを追加
  3. マイグレーション

マイグレーションファイルの作成

% php artisan make:migration add_column_to_users_table --table=users

どういう操作をするかわかりやすいファイル名にすると良いでしょう。
--tableオプションでどのテーブルを編集するか指定します。

カラムを追加

20XX_00_00_000000_add_column_to_users_table.php
class AddColumnToUsersTable extends Migration
{
    public function up()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->string('body')->nullable();
        });
    }

    public function down()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->dropColumn('body');
        });
    }
}

up()に追加処理を書き、down()にロールバック処理を書きます。

マイグレーション

% php artisan migrate

おわり

これでおわりです。
テーブルをいじるときは新しくマイグレーションファイルを作成するようにしましょう。
そうしないと、ロールバックする時正しく動作しなかったり、テーブルが崩れたりします。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

超初心者がherokuにPHPアプリを公開してみた!~デプロイ編~

前回投稿したアカウント登録編の続きです。
実際にアプリケーションをherokuにデプロイ(上げる)してみたので、手順をまとめました。

デプロイしたもの

言語:PHP
FW:Laravel6.0
DB:MySQL
エディタ:Visual Studio Code

アプリケーションの作成

herokuにデプロイするアプリケーションを作成します。
アプリケーション名は前回登録したものと同じものにします。

image.png

又、Githubにも同名のリポジトリを作成します。
image.png

herokuにログイン

続いて、ターミナルからherokuにログインします。

$heroku login

すると、以下のようなコマンドが表れるので、「q」以外のキーボードをどれか適当に押します。

heroku: Press any key to open up the browser to login or q to exit:

ブラウザにこのような画面が表れるので、「Log In」を押す。
image.png
無事herokuにログインができました!
ログインが完了したら閉じても大丈夫です。
image.png

herokuにアプリケーションを上げる

ログインが完了したら、作成したアプリケーションをherokuに上げてみましょう!
herokuのアプリケーションはGitを経由して上げられる為、gitコマンドを利用します。

$git init
Reinitialized existing Git repository in [アプリケーションが格納されているディレクトリ]

$ heroku git:remote -a [アプリケーション名]
set git remote heroku to https://git.heroku.com/アプリケーション名.git

$git add .
$git commit -m "任意のコメント"
$git push heroku master

ステージングする際は何かしらの変更を加えてから行うと、「add」以降の処理が行えます。
pushした後にわんさか処理のログが流れますが、「 * [new branch] master -> master」が最後に表れたらOKです。
実際にpushした後は、下図のようにダッシュボード画面のDeployバーにて、Githubと連携できたことが確認できます。
image.png

herokuにアプリケーションの設定

herokuに作ったアプリケーションにビルドパックを追加します。
ビルドパックとは、heroku上でアプリケーションを動かすために必要な機能やスクリプトを一式集めたもので、言語ごとに備わっています。
ビルドパックはアプリケーションをherokuにデプロイすると、アプリケーションに沿った言語のビルドパックが追加されます。
今回はPHPでアプリケーションを作った為、PHPのビルドパックが追加されています。
image.png

Procfileを作成する

アプリケーションが上げられたら、Procfileを作成しましょう。
Procfileとは、heroku上にあるアプリケーションをどうやって動かすのかを記載する、指示書のようなものです。
以下のコマンドをアプリケーションの直下ディレクトリで打ち込みます。

$touch Procfile

すると「Procfile」という名前の空のテキストファイルが作成される為、以下の表記を追記します。

Procfile.txt
web: vendor/bin/heroku-php-apache2 public/

今回はwebサーバーにApacheを使用した為、こちらの表記を使用します。
Procfileの内容はアプリケーションに使用する言語によって異なります。

varcharの文字数を191文字にする

Procfileを追加し、herokuへpush...の前に、データベースのvarchar型の191byteに変更します。
herokuの無料プランでは、通常の文字数である255byteだと規定のデータ量を超えてしまい、マイグレーションする際にエラーが発生してしまいます。(マイグレーションのロールバックやコミットの取消などを行う羽目になります。)
app>Providers直下にあるAppServiceProvider.phpを以下のように編集します。

AppServiceProvider.php
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;
//この記述を追加しないと「Schemaなんてクラスが無いぞ!と怒られます

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        Schema::defaultStringLength(191);
    }

改行コードをCRLFに変更しないようにする

今度こそpushを...と思ったら、そのままステージングしようとしたら、以下のようなエラーががが。

warning: LF will be replaced by CRLF in app/Providers/AppServiceProvider.php.
The file will have its original line endings in your working directory

調べると、Gitが改行コードをCRLF形式に変更しようとしているらしい。
これはGitの特性なのか設定によるものなのかは調査中ですが、こちらを防ぐ為に、ステージング前に以下のコマンドを入力します。

$ git config --global core.autoCRLF false

herokuにpushする

これでようやくherokuにpushできます。

$git add -A
$git commit -m "任意のコメント"
$git push heroku master

ClearDBの追加

MySQLを使用する際は、アドオンとしてClearDBというものを使います。
ClearDBとはDBaaSと呼ばれるアプリケーションで、バックアップやメンテナンスなどの管理作業はプラットフォームが行ってくれます。
以下のコマンドを入力して、ClearDBを追加します。

$heroku addons:add cleardb
#実行後
Creating cleardb on ⬢ laraheroku-test... free
Created cleardb-pointy-89803 as CLEARDB_DATABASE_URL
Use heroku addons:docs cleardb to view documentation

URLの情報を確認

ClearDBのURLでこの後の環境変数の設定に必要な情報を確認します。

$ heroku config | grep CLEARDB_DATABASE_URL

ここで出力されるURLの見方は以下の通りです。
CLEARDB_DATABASE_URL: mysql://[ユーザー名]:[パスワード]@[ホスト名]/[データベース名]?reconnect=true

環境変数の設定

DBに接続するための環境変数をheroku configに設定します。
設定は先述のURLの情報をそれぞれの項目に設定します。

$ heroku config:set DB_DATABASE=[データベース名]
$ heroku config:set DB_HOST=[ホスト名]
$ heroku config:set DB_USERNAME=[ユーザー名]
$ heroku config:set DB_PASSWORD=[パスワード]
$ heroku config:set APP_KEY=$(php artisan key:generate --show)
$ heroku config:set APP_ENV=heroku
$ heroku config:set LANG=ja_JP.UTF-8 #言語コードの設定
$ heroku config:set TZ=Asia/Tokyo    #タイムゾーンの設定

マイグレーションの実行

以上の設定をマイグレーションします。

$ heroku run php artisan migrate

サイトを開く

マイグレーションが問題無くできましたら、いよいよサイトを開く時です!
以下のコマンドを入力すると、サイトが開きます。

$ heroku open

image.png

LaravelのWelcome画面を開くことに成功しました!!!!
ちなみに、herokuに上げられたサイトは「herokuapp」のドメインが与えられます。

まとめ

紆余曲折しましたが、アプリケーションをherokuに上げてみました。
サーバーにアプリケーションを公開することはWebアプリ開発の大きな目標の一つとしていたので、小さいながらも出来たことに達成感を味わいました。
これを皮切りに他に作った物をherokuに上げてみたり、他のサーバーにも触れていきたいと思います。
今回上げたものは以下のURLになります。
laraheroku-test

参考文献

Laravelをherokuにデプロイする(データベースはMySQL)
git addしたらCRLF will be replaced by LFなエラー
Herokuにデプロイ済みのMySQLのロールバック

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Laravel 6 $ composer require laravel/uiを実行するとエラーが発生する

目的

  • Laravel6 のアプリにユーザ認証機能を付与しようと思い$ composer require laravel/uiを実行した時にエラーになった話をまとめる。

実施環境

  • ハードウェア環境
項目 情報
OS macOS Catalina(10.15.5)
ハードウェア MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)
プロセッサ 2 GHz クアッドコアIntel Core i5
メモリ 32 GB 3733 MHz LPDDR4
グラフィックス Intel Iris Plus Graphics 1536 MB

問題までの経緯

  1. 下記の記事の方法でDockerにてLaravelの環境を構築した。
  2. 下記の記事の「ライブラリのインストール」の作業まで実施した。
  3. 下記コマンドを実行してライブラリのインストールを行おうとした。

    $ composer require laravel/ui
    

問題

  • エラーが発生してライブラリをインストールすることができない。
  • エラー内容を下記に記載する。

    bash-4.2# composer require laravel/ui
    Using version ^2.1 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.23
        - Conclusion: don't install laravel/framework v6.18.23
        - 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, v7.1.2, v7.1.3, v7.10.0, v7.10.1, v7.10.2, v7.10.3, v7.11.0, v7.12.0, v7.13.0, v7.14.0, v7.14.1, v7.15.0, v7.16.0, v7.16.1, v7.17.0, v7.17.1, v7.17.2, v7.18.0, v7.2.0, v7.2.1, v7.2.2, v7.3.0, v7.4.0, v7.5.0, v7.5.1, v7.5.2, v7.6.0, v7.6.1, v7.6.2, v7.7.0, v7.7.1, v7.8.0, v7.8.1, v7.9.0, v7.9.1, v7.9.2].
        - laravel/ui v2.1.0 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, v7.1.2, v7.1.3, v7.10.0, v7.10.1, v7.10.2, v7.10.3, v7.11.0, v7.12.0, v7.13.0, v7.14.0, v7.14.1, v7.15.0, v7.16.0, v7.16.1, v7.17.0, v7.17.1, v7.17.2, v7.18.0, v7.2.0, v7.2.1, v7.2.2, v7.3.0, v7.4.0, v7.5.0, v7.5.1, v7.5.2, v7.6.0, v7.6.1, v7.6.2, v7.7.0, v7.7.1, v7.8.0, v7.8.1, v7.9.0, v7.9.1, v7.9.2].
        - don't install illuminate/filesystem 7.x-dev|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.3|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.4|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.5|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.6|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.7|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.0.8|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.1.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.1.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.1.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.1.3|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.10.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.10.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.10.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.10.3|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.11.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.12.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.13.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.14.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.14.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.15.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.16.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.16.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.17.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.17.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.17.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.18.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.2.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.2.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.2.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.3.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.4.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.5.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.5.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.5.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.6.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.6.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.6.2|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.7.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.7.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.8.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.8.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.9.0|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.9.1|don't install laravel/framework v6.18.23
        - don't install illuminate/filesystem v7.9.2|don't install laravel/framework v6.18.23
        - Installation request for laravel/framework (locked at v6.18.23, required as ^6.2) -> satisfiable by laravel/framework[v6.18.23].
        - Installation request for laravel/ui ^2.1 -> satisfiable by laravel/ui[2.x-dev, v2.1.0].
    

問題解決までの経緯

  1. 先のエラーの内容を和訳した。下記に和訳したエラー内容を記載する。

    ./composer.jsonが更新されました
    パッケージ情報を含むComposerリポジトリの読み込み
    依存関係の更新(require-devを含む)
    要件をインストール可能なパッケージのセットに解決できませんでした。
    
      問題1
        -結論:laravel / framework v6.18.23を削除
        -結論:laravel / framework v6.18.23をインストールしない
        -laravel / ui 2.x-devには、illuminate / filesystem ^ 7.0が必要です-> luminate / 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、v7.1.2、v7.1.3、v7.10.0、v7.10.1、v7.10.2、v7.10.3、v7.11.0 、v7.12.0、v7.13.0、v7.14.0、v7.14.1、v7.15.0、v7.16.0、v7.16.1、v7.17.0、v7.17.1、v7.17.2、v7.18.0、v7.2.0、v7 .2.1、v7.2.2、v7.3.0、v7.4.0、v7.5.0、v7.5.1、v7.5.2、v7.6.0、v7.6.1、v7.6.2、v7.7.0、v7.7.1、v7.8.0 、v7.8.1、v7.9.0、v7.9.1、v7.9.2]。
        -laravel / ui v2.1.0には、illuminate / filesystem ^ 7.0が必要です-> Illuminate / filesystemによって満たすことができます、v7.0.6、v7.0.7、v7.0.8、v7.1.0、v7.1.1、v7.1.2、v7.1.3、v7.10.0、v7.10.1、v7.10.2、v7.10.3、v7.11.0、v7 .12.0、v7.13.0、v7.14.0、v7.14.1、v7.15.0、v7.16.0、v7.16.1、v7.17.0、v7.17.1、v7.17.2、v7.18.0、v7.2.0、v7.2.1 、v7.2.2、v7.3.0、v7.4.0、v7.5.0、v7.5.1、v7.5.2、v7.6.0、v7.6.1、v7.6.2、v7.7.0、v7.7.1、v7.8.0、v7 .8.1、v7.9.0、v7.9.1、v7.9.2]。
        -luminate / filesystem 7.x-devをインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.0.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.0.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.0.2をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.0.3をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.0.4をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.0.5をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.0.6をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.0.7をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.0.8をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.1.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.1.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.1.2をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.1.3をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.10.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.10.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.10.2をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.10.3をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.11.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.12.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.13.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.14.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.14.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.15.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.16.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.16.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.17.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.17.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.17.2をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.18.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.2.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.2.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.2.2をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.3.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.4.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.5.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.5.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.5.2をインストールしない| laravel / framework v6.18.23をインストールしない
        -luminate / filesystem v7.6.0をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7.6.1をインストールしない| laravel / framework v6.18.23をインストールしない
        -Illuminate / Filesystem v7をインストールしないでください。
    
  2. バージョンに関するエラーが出ている、おそらく先のコマンドを実行し、ライブラリを取得するにはLaravelのバージョンばあっていないというエラーが出ている。しかしLaravelのバージョンは7にしたくない、Laravel6で本ライブラリをインストールするコマンドを探す。

  3. 下記コマンドを実行してライブラリのインストールを試してみた。

    $ composer require laravel/ui 1.*
    
  4. ライブラリのインストールは正常に完了した。

参考文献

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む