gurelog

エンジニアになるため、日々学んだことをまとめています

Vue.jsの特徴

Vue.jsの特徴やどんな表し方をするのかをまとめてみました。 双方向データバインディングが可能 データとUIが結びついており、データを更新すればUIに反映されて、UIを更新すればデータが更新されます。 v-modelディレクティブ v-model は任意の form 要素に…

【PHP】includeとrequireの違い

PHP

PHPで外部ファイルを読み込むためのincludeとrequireの違いについてまとめようと思います。 共通点 どちらも外部ファイルを読み込み、実行するためのものです。 また、どちらも書き方は include "ファイルのパス"; require "ファイルのパス"; となります。 …

【PHP】ビルトイン関数まとめ①

PHP

今回はPHPのビルドイン関数についてまとめました。 主に文字列をなんやかんやする系の関数と数値をなんやかんやする系の関数です。 文字列をなんやかんやする系関数 ・strlen() 文字数を空白も含めて数えて返す $input = ' gure '; echo strlen($input) . PH…

【Laravel】Eloquentは何をしてくれてるの?

こんにちは。gureです。 Laravelを学習していて、Eloquentという見慣れない単語がよく出てきていたのですが、具体的に何をしてくれているのか曖昧なままでしたので、まとめてみたいと思います。 端的にいうと 美しくシンプルなアクティブレコードによるデー…

【Laravel】Laravel8からルーティングの書き方が変わった

こんにちは。gureです。 Laravelを使い始めて最初に躓いたのがタイトルのルーティングでした。 バージョン管理大事!!!!!!(教訓) これまでのルーティング Laravel7まではこのように書いていたみたいです。 Route::get('/item', 'ItemController@index…

【Laravel】バリデーションをかける!フォームリクエスト編

こんにちは。gureです。 今回は前回に引き続き、Laravelでのバリデーションのかけ方をまとめてみようと思います。 今回はフォームリクエストを使用します。 環境は Laravel 8.10.0 です。 フォームリクエスト作成 フォームリクエストは、バリデーションロジ…

【Laravel】バリデーションをかける!ValidatesRequestsトレイト編

こんにちは。gureです。 今回はLaravelでバリデーション をかける方法をまとめておきたいと思います。 方法はいくつかあるようなのですが、今回はValidatesRequestsトレイトを使用する方法をまとめておきます。 環境は Laravel 8.10.0 です。 方法 コントロ…

【Laravel】Herokuにデプロイしたら削除機能だけ500エラー

こんにちは。gureです。 今回はHerokuにデプロイしたアプリケーションの削除機能だけで500エラーが出るという状況に遭遇したので備忘録がてら書いておこうと思います。 環境は以下です。 mac OS Catalina 10.15.5 Laravel 8.10.0 Docker 19.03.13 Heroku 7.4…

【PHP】composer requireでメモリが足りないよと怒られた

こんにちは。gureです。 今回はLaravelのアプリケーションにS3用のパッケージをインストールしようとしたら怒られた時の対処法をまとめておこうと思います。 S3を使用するには、 composer require league/flysystem-aws-s3-v3 というコマンドを使って、S3用…

Docker+Laravelで作ったアプリケーションをHerokuにデプロイ!

こんにちは。gureです。 今回Docker+Laravelで作成したアプリケーションでgithubに変更をpushしたら自動でHerokuにデプロイできるようにしていきたいと思います。 環境は以下です。 mac OS Catalina 10.15.5 Laravel 8.10.0 Docker 19.03.13 Heroku 7.46.1 …

【Laravel】Laravelでも管理者権限を追加しよう

こんにちは。gureです。 今回は管理者権限を作成して、管理者権限を持つユーザーとそれ以外で画面表示を変更したり、管理者にしかアクセスできないページを作ります。 なぜタイトルが「Laravelでも」なのかというとRailsで作ったアプリケーションでも管理者…

【Laravel】親モデルを削除したら子モデルも削除されるようにする!

こんにちは。gureです。 今回は親モデルを削除したら子モデルも削除されるようにする方法をまとめました。 今回の親→item 子→bookmark です。 商品本体が削除されたら、ユーザーがブックマークしていた商品もブックマークテーブルから削除してね!が今回のお…

【Laravel】ログイン&新規登録後のリダイレクト先をトップページにしたい

こんにちは。gureです。 今回は、ログイン/新規登録後のリダイレクト先をトップページに変える方法についてまとめたいと思います。 デフォルトで実装されている認証機能を使うと、ログインした後と新規登録した後は/homeへ戻ってしまいます。 ただ今回はデフ…

【Laravel】コントローラーからビューに変数を渡す

こんにちは。gureです。 今回はLaravelでコントローラーからビューに変数を渡す方法についてまとめました。 どうやら3種類方法があるみたいです。 ①[]とダブルアロー関数を使って渡す ItemsController.php public function index() { $items = Item::latest(…

【Laravel】画像をアップロードするには?

こんにちは。gureです。 今回はLaravelで画像投稿機能を実装してみました。 完成品 完成品はこんな感じです。 入力フォーム↓ 表示↓ ルーティングの設定 web.php name('index'); Route::get('/create',[ItemsController::class, 'create'])->name('create'); …

個人的UNIXコマンドまとめ

こんにちは。gureです。 今回はUNIXコマンドを基本コマンドから個人的なんじゃこりゃコマンドまでまとめてみました。 cd (change directory) ディレクトリを移動する cd project # projectというディレクトリに移動 cd ~/ #ホームディレクトリに移動 cd .. #…

Dockerとは?

こんにちは。gureです。 今回はDockerについて理解が曖昧なままだったので、まとめてみようと思います。 Dockerとは? Docker社が開発している、コンテナ化を用いてアプリケーションを開発・配置・実行するためのオープンソースソフトウェア(OSS)のことで…

【Ruby】AからZまでの配列を作る

こんにちは。gureです。 今回は AからZまでの配列を作りたかったので、方法について調べてみました。 方法 p ("A".."Z").to_a #結果 ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W",…

【Ruby】Rubyで約数を求めてみた

こんにちは。gureです。 今回はRubyで約数を求める機会があったので、求め方についてまとめてみました。 今回の主役 今回の主役はselectメソッドです。 書き方 オブジェクト.select { |ブロック変数| 処理 } 各要素に対してブロック({ }で囲まれている部分…

【Ruby】popメソッドとshiftメソッド

こんにちは。gureです。 今回はpopメソッドというメソッドを新しく学んだので、まとめておきたいと思います。 合わせて復習として類似メソッドのshiftメソッドもまとめておこうと思います。 popメソッド popメソッドは配列の末尾を取り除くメソッドです。 例…

【Ruby】case文で条件分岐する

こんにちは。gureです。 今回はcase文を使った条件分岐についてまとめてみようと思います。 条件分岐する時、ついif文が頭の中に浮かんでしまうのですが、複数の条件を指定する時にはif文でelsifを重ねるよりも、case文を使った方がシンプルに記載ができます…

【Ruby】uptoメソッドとdowntoメソッド

こんにちは。gureです。 今回は前回の記事に引き続き繰り返し処理を行ってくれるuptoメソッドとdowntoメソッドについて備忘録がてらまとめておこうと思います。 uptoメソッド 書き方 オブジェクト.upto(max) do |ブロック変数| 繰り返したい処理 end オブジ…

【Ruby】繰り返し処理あれこれ

こんにちは。gureです。 今回は繰り返しの処理ができる ・for ・each ・while ・times ・until ・loop こちらの違いについてまとめてみました。 for 配列、ハッシュ、範囲オブジェクトなど要素の数だけ処理を繰り返し実行します。 書き方 for 変数 in オブジ…

【Ruby】puts p print出力メソッドまとめ

こんにちは。gureです。 今回は出力メソッドであるputsメソッド、pメソッド、printメソッドについてまとめてみました。 putsメソッド 文字列も数値も末尾に改行が入った状態で返されます。 配列も要素ごとに分けられた上に改行されて返されるので、出力結果…

RubyとPHPの違いって?

こんにちは。gureです。 今回はRubyとPHPの違いをざっくばらんにまとめてみました。 PHP(Personal Home Page) ・元々はHPを便利に作るための言語 ・学習コストがかからないので初心者向け(環境構築が楽) ・フレームワークがたくさんある(例Laravel,CakePH…

CI/CDって?

こんにちは。gureです。 今回はCI/CDについてまとめてみようと思います。 CI/CDとは CI:Countinuous Integration=継続的インテグレーション CD:Continuous Delivery=継続的デリバリー の略です。 開発したコードのテストを自動で実行してくれて、(CI) 自…

クラウドの種類あれこれ

こんにちは。gureです。 今回は前回書いたサーバーの種類の中でもクラウドのSaaS、PaaS、IaaSについて違いをまとめておこうと思います。 SaaS(サースorサーズ) Software as a Serviceの略です。 クライアント側が提供されているサーバーにアクセスして、ソ…

サーバーの種類あれこれ

こんにちは。gureです。 今回はサーバーの分類について認識が曖昧だったので、まとめておこうと思います。 以前ブログ内でNginxについて言及した際に、アプリケーションサーバーやらデータベースサーバーやらwebサーバーやらの単語が出てきたのですが、それ…

【アルゴリズム】フィッシャー-イェーツのシャッフルとは

こんにちは。gureです。 今回は「フィッシャー-イェーツのシャッフル」というアルゴリズムについて学んだので私なりに整理して書き記しておこうと思います。 フィッシャー-イェーツのシャッフルとは? 簡単にいうと、ランダムな順番の作り方です。 フィッシ…

【Ruby】大文字にしたり小文字にしたりするメソッドたち

こんにちは。gureです。 今回はRubyの文字列を大文字にしたり小文字にしたりするメソッドをまとめてみました。 まとめ downcaseメソッド 指定された文字列内の大文字を小文字に変換します upcaseメソッド 指定された文字列内の小文字を大文字に変換します sw…