てりーのtechブログ

エンジニア向けにITや技術系の発信と哲学を書いてます

Event!のミーティング(初回)2019/11/25

2019/11/25

備忘録

 

Event!のミーティング(初回)

概要

Nuxt.js+firebaseの出欠管理アプリの制作。

実装担当としてジョイン。

1回目のミーティングでナンシー(開発責任者)とミーティング。

 

githubの使い方

今回のプロジェクトのgithubの運用の仕方。

 

全体像

atom、morecule、organism、templateの順に作る。

・各機能ごとにPR出してナンシーにレビュー貰う。

・3週間ぐらいを目安に仕上げる

 

日々のタスク

・projectのtaskにtodoが細かく振られているので、確認。

・作業始めたらWIPに移動

・作業終わったらDONEに移動してcommit→PR

・ナンシーレビュー 

 

point

figmacss書いてある

・fontとcolorは$で指定してあるの使う(sass)

・ts慣れる

・webstorm使い方に慣れる

とにかくこまめに連絡する(恥を超える!!)

 

daigoの記録の本

いくつか試してみる

行動ダイアリー

行動を1時間毎にメモ。

喜びと達成の観点から10段階評価で計測する。

 

バイトとかでの記録に似ている。

1週間ぐらい垂れ流してみて、後で振り返ると面白そう!!

 

とりあえず1週間やってみる!(12/2まで)

クイック・ウィン分析

やるべき事の優先順位をつけるツール。

やり方は明日記載。

 

心理退避セッティング

やり方は明後日。詳しくも分かっていないが取り入れたい。

 

 

 

 

wordpressの「データベース接続確立エラー」の対処法

こんにちは、てりーです。

最近、友人の会社のコーポレートサイトをwordpressで作っていうのですが、如何せんエラーに打ち当たることが多いです。

 

wordpressの中でも単純にダッシュボードをいじってどうにかなるなら、感覚でいじっていても解決することもあります。

 

しかし、サーバーやドメイン周り、子テーマなどを使ったカスタマイズになるとちゃんと周辺知識も必要だなーと思います。

今回はデータベース接続確立エラーについてまとめました。

f:id:terrywatson:20190910201947j:plain

データベース接続確立エラー

wordpressのサイトを開いた時に「データ接続確立エラー」というエラー文が表示された特の対処法です。

1番オーソドックスなのがwp-config.php訂正!

wp-config.phpでは

・データベース名

・データベースのユーザー名

・データベースのパスワード名

・データベースのホスト名

が正しく記入されている必要があります。

 

そして結構ココの入力ミスでデータベースに繋がらないパターンが多いです。

上記の情報はデータベース作成時に作っていると思うので、大事にメモっておきましょう!

 

wordpressをアンインストール→インストール

先ほどのwp-config.phpを正しく記入してもエラーが収まらない際にはwordpressをアンインストールする事で解決することが多々あります。

 

データベース側を削除しない限り、wordpressで作ったファイルは消えないので、今までの分が台無しになることもありません!

 

僕はアンインストールする事で何回も救われています。

 

それでも直らない時はサーバー側に問題がある可能性が高いです!

wp-config.phpの入力ミスでもなく、再インストールしても直らない場合はレンタルサーバーの方がダウンしている場合があります。

 

サーバーがダウンしている場合はホスティングサービスの会社からメール等で連絡がきていると思うので、確認してみましょう。

 

メール等が来ていなければ、お問い合わせの所から連絡を入れてみる事を推奨します。

やはり例外は直接聞いた方が早く対応できることが多いです。

 

さて、今回はこんな感じです!

wordpressは基本がダッシュボーでの政策になる分、エラーが起きてから悩むケースが多いと思いますが、試行錯誤で解決していきましょう。

 

参考サイト

https://wpmake.jp/contents/knowledge/database_connection_error/

 

さくらインターネットでec-cubeをインストールする方法!

こんにちは、てりーです。

 

今回はec-cubeをさくらインターネットのサーバーでインストールする方法をまとめて行きます。

 

f:id:terrywatson:20190904214653p:plain

 

参考記事

help.sakura.ad.jp

基本的に上の記事に沿って進めていきました。

 

1 事前にデータベースを作っておく

「データベースの確認」から見れる。

確認してなければ作る!

パスワード系は忘れない様にメモる事。

 

2  ec-cubeのインストール

指示に従って進めていく。

この時にメモったデータベースのパスワードが必要。

 

インストール先に迷ったが、さくらのファイルマネージャーからディレクトリを確認すれば、どこに保存すれば良いか分かる。

 

テーブルの接頭語についてはよく分からなかったのでテキトーに付けた。

 

3 アプリケーショ,サイトの設定を行う

インストールが終わったら、そのままアプリケーションとサイトの設定を行っていく。

 

管理画面ID,管理画面パスワードは管理画面へのログイン時に使うのでメモ必須!

管理画面のディレクトリ名は管理画面のURLの一部になるので、忘れない様に。

 

と入力したことをいちいちメモった方が良い感じ。

 

データベースはmysqlを選択。

4 設定が終わったら管理画面から実際にログインしてみる

一通り設定が終わったら管理画面からログインしてみる。

インストールが完了しました!という画面を開いていれば、「管理画面を表示」をクリックすればログイン画面のURLに飛べる。

 

閉じちゃってたら直でURLを打ち込むと良い。

ec-cube本体のURLに先ほどの管理画面のディレクトリ名を足す。

イメージ的には「ec-cube本体のURL/管理画面のディレクトリ/」と行った感じ。

 

5 インストール後

udemyの講座で10時間ぐらい勉強すれば、ecサイト制作可能!!

僕のオススメはこの講座です。

https://www.udemy.com/course/ec-cube-4-userguide/

 

コードをがっつり書いたりしなければ、この講座の内容だけでも十分にecサイトを作成可能。

ダッシュボードから一通りECサイト制作ができる様になりますよ!

 

今回はこんな感じです。

読んでいただきありがとうございました。

 

独自ドメインをec-cubeに組み込む(前編)

こんにちは、てりーです。


8月頭に開発系の案件としては初めてのec-cube案件を頂きました。
そこで今週はec-cubeでの独自ドメインの取得にチャレンジしています。

 

ec-cubeでの独自ドメイン取得までのガイドライン

公式文献
https://docs.google.com/presentation/d/1j6KTbUdVbO2enaKjbWeSYkTxJ9duvIyCq0bMvN5IK9Y/mobilepresent?slide=id.g5dd293eb9c_0_41

この手順に沿って行っていきました。

独自ドメインは持ち込みです。
はさくらインターネットにて取得していました。

ドメイン取得のパターンは2種類

持ち込みは5000円払い切り。
ドメイン取得までのec-cubeにお願いすると5000円/月です。

持ち込みの方が、ドメインの料金を考えても割安なので、ドメイン取得について理解できそうなら持ち込みの方がお得かなーと思います。

DNSレコードの設定

参考サイト

https://e-yota.com/infrastructure/sakurainternet_dns_zone_setup/

「ゾーン設定」

ゾーン設定とは ドメイン名に対してIPアドレスなどの情報を割り当てることです。

 

ゾーン設定をしなければ、ドメインは利用できないに等しい状態です。

なので実際に独自ドメインを使うには必須の作業になる訳ですね。

 

ここで問題発生!!

f:id:terrywatson:20190903035245p:plain

なぜかゾーン追加はできない!

 

調べてみるとyahoo知恵袋にこんな質問が!

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14156271774

 

なんか自力だと拉致があかなさそう!!

という頃でさくらのサーバーに連絡しようとしましたが、18時を過ぎていたので、明日に持ち越しに。

 

後編に続きます。

日本語を学ぶか人を学ぶか

https://note.mu/yontengop/n/n8d68fbddb1e8

 

この記事を読みました。

 

皆さんがこれから読まれるなら「可哀想な子達がいるなー」という目ではなく、自分が当事者かもしれない!と自分の事を疑えるきっかけにして欲しいと思っています。

 

日本語の読み書きが出来ない人に会ったことは無いですが、日本語が理解出来ていない人にはちょくちょく会います。

 

論理力に欠けるとか、問題はそこじゃないよー!って所に引っかかる人です。

 

「あー!身近にいるいる」ってなった人も多いと思います。

外から見てると一目瞭然ですよね。

 

プログラミングの習得なんかはこういった論理力ですごく差がつくなーとつくづく感じます。

 

日本語が理解できないと知識体系の習得にめちゃくちゃ不利です。

 

自発的に勉強して来た人達と比べると冗談じゃなく100倍ぐらい時間がかかるんじゃないかな。

 

ここで、問題なのは自分は勉強できるし、大学にも行ってるから大丈夫だー!!と自分の理解力を疑った事も無い人が多いという事です。

 

かくいう自分もそうでしたが!笑

 

個人的に日本語の理解力は出来る、出来ない!という2択では無く、濃淡の問題だと思っています。

 

日本語の理解力が著しく低い人達は義務教育の段階でそれを理解して、それ以外の武器を磨く道を選んでいるケースが多いです。

 

その1つの例が、参考記事にもあった対人スキルですね。

 

悪くいえば、顔色を伺ったり、媚びるといったスキルを早い段階から自分の武器として育てて行く訳です。

 

逆に日本語の理解力がある人達は、どこかのタイミングで自発的に勉強をしている場合がほとんどです。

 

その知識を学ぶとはこういう事だ!と日本語の理解力をスキルとして高めていった歴史があります。

 

そのどちらでもない、義務教育で落ちこぼれ無かったが為に対人スキルも磨かずに、自発的にも勉強をしていない人達は現代だと中々に不利だと思います。

 

勉強が出来るにしろ、出来ないにしろ、それはきっかけに過ぎず、自ら生きる為にスキルを得てこなかったという過去が積み重なっているからです。

 

日本語の理解力をあげる!というとめちゃくちゃ学術的に見えますが、イメージ的には色々アプリケーションをインストールして場当たり的に解決するのではなく、OSを定期的にアップデートする感じ。

 

思考特性とか、癖をイケてる形に直して行く感じ。

 

とまぁこう書くとこれはこれで難しそうですね!自分もナウで挑戦中なので、これに関しては別途記事にまとめます!笑

 

今日はこんな感じです!

 

Vue.jsで簡単なアプリケーションを作るまでに学んだこと

はじめに

完全に個人用の備忘録として作りました。

udemyの「Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)」で学習した内容のメモになります。 内容としてはsection1~4まで。

背景

仕事の関係でVue.jsを使うので、「関わりたいなら最低限これやってねー!」と言われたのがudemyの「Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)」。

合計20時間超えの講義量を見て絶望しましたが、なんとかしないとアカン!ということで、せっせとアウトプットしていきます。

作ったもの~ドラゴンスレイヤー~

スクリーンショット 2019-08-14 23.54.35.png これが初期状態。 体力がplayer側もmonster側も100あります。

「START NEW GAME」で戦いのゴングが鳴ります!! スクリーンショット 2019-08-14 23.54.43.png

コマンドが出てきましたね。 ATTACKで攻撃してみます! スクリーンショット 2019-08-14 23.54.50.png 攻撃に成功しました! playerが攻撃すると、必然的にmonster側のターンになり、monsterも攻撃してきます!

monster側の方が攻撃力は高いので、ATTACKを繰り返してみると。。 スクリーンショット 2019-08-14 23.55.05.png

あちゃー。 負けました!! alertで「You Lost!」って出てますね。

OKを押すとNew Gameになります。 スクリーンショット 2019-08-14 23.55.30.png

今度はSPECIAK ATTACKを連発します。 10ダメージ与えているのでいい感じですね。 スクリーンショット 2019-08-14 23.55.50.png 回復も使ってみます。 10回復するので、危ないときは回復優先で。 スクリーンショット 2019-08-14 23.56.08.png GIVE UPを押すと、また最初の状態の戻ります!

学んだ知識まとめ

v-on

DOMの購読やイベント発火時にJSの実行が可能。

v-on:@click =""でクリック時にJS実行。 本アプリでは省略版の @clickをATTACKなどのコマンドで多用した。

v-if,v-else

条件分岐。 PHPでのif構文のように使えるので、理解は難しくない。 v-if(条件式){内容} v-else{内容}

本アプリではゲーム中であれば、attackなどのコマンドを表示し、ゲーム中じゃなければ表示しない!という設定用に使った。

 

<section class="row controls" v-if="!gameIsRunning">
<div class="small-12 columns">
<button id="start-game" @click="startGame">START NEW GAME</button>
</div>
</section>
<section class="row controls" v-else>
<div class="small-12 columns">
<button id="attack" @click="attack">ATTACK</button>
<button id="special-attack" @click="specialAttack">SPECIAL ATTACK</button>
<button id="heal" @click="heal">HEAL</button>
<button id="give-up" @click="giveUp">GIVE UP</button>
</div>
</section>

v-for

v-forは配列に基づいて、アイテムのリストを表示する際に使う。 使い方としては <li v-for="item in items"> {{ item.message }} </li>としてitemsの中のmessageを配列として表示できる。

本アプリではコマンドの下のダメージなどの表示をv-forで作っています。 turnsという配列の中のtextをループ処理で取り出す事で、ターン毎の両者のダメージを描画しています。

<ul>
<li v-for="turn in turns"
:class="{'player-turn': turn.isPlayer, 'monster-turn': !turn.isPlayer}">
{{ turn.text }}
</li>
</ul>

まとめ

Vue.jsを勉強し始めて3日目。 勉強時間にして20時間ほどを費やしたと思います。

「インプット量が多すぎて処理できない!とりあえずまとめよう!!」的な考えで今回のQiitaを執筆するに至りましたが、実際にまとめてみると、そんなに多くも難しくもない量しかまだ触れていないことが分かりました。

udemyの講義自体はまだ全体の1/6なので、またインプットが溜まってきたらqiitaに吐き出します。

Podcastで気になったMRMを取り入れたら夏の朝が充実してきた

以前の記事でも紹介しましたが、最近は作業中にpodcastばかり聞いています。

www.terryblog.tokyo

 

この中でも聞いている「しがないラジオ」の中でMRMという朝のルーティーン消火方法が紹介されていたので、3日前から試してみました。

 

先に結論から言うと、めちゃくちゃ良いです。

 

MRMとは

しがないラジオの中で紹介されたメソットです。

正式名称はMorning Routine Managemenというらしいです。

 

しがないラジオのgamiさんがブログにやり方から細かく書き起こしてくれてます。

jumpei-ikegami.hatenablog.com

 

どうやって書き起こした物を見るのか

gamiさんが上の記事内で作ったというアプリはリンクから飛んでも使えませんでした。

なので、このメソットの一番の課題はどうやって毎日の書き起こしたルーティーンを見れる状態にするか。

 

紙が確実だけど、毎日書くのはダルイ!!

webだとパソコンを開かないと忘れる!!

 

そんな中で僕は、起きたら確実に見るだろうLINEに着目しました!

 

Googleカレンダー+IFTTT+LINEで最強ツールに!!

 

みなさんIFTTTって知ってますか?

様々なサービスを連携紙的ツールです。

 

これでgoogleカレンダーとLINEを連携します。

そしてMRMで書き出した毎朝のルーティーンをGoogleカレンダーに毎日の予定として分単位で書き出します。

そうすると毎朝、僕のLINEに朝のルーティーン届くという形です。

 

これで見逃さないです。

朝起きたら、LINEを確認したら通知にルーティーンがめちゃくちゃ溜まってるのでやることは明確です!笑

 

これのやり方はま他詳しく説明します。

 

朝にやる事をしっかりやると気持ち良い!

結局これです!

朝に自分のことをやれていると気持ち良い!

朝はメールやLINEの返信もこないことが多いので、一回返せばあとは自分だけの時間になります。

 

だからこそ、MRMでちゃんとやることが明確になってると充実しますし、気持ちよく1日を始められます。

 

とにかくいい感じなので、気が向いたらみなさんも是非!

 

 

Macでpathを通す方法をまとめる

 

ローカル環境で作業を行った時に良くぶつかる壁の1つが「pathを通す」

今までの環境構築時は試行錯誤でやり過ごしてきました。

いつまでもそうしている訳にはいかないので、1度ちゃんと理解してみたいと思いました。

「pathを通す」とは

特定のプログラムをプログラム名だけで実行出来るようにする事。

本来はエディタ等でプログラムを実行する時はフルパス(ディレクトリを全て書く)を指定しないと実行出来ません。

pathとは

フォルダやファイル(ディレクトリ)がどこにあるのかを示してくれるものです。

例としてはこんな感じ

/usr/local/bin
/usr/local/opt/php@7.1/bin
/usr/local/mysql/bin

これらは全て1番外側から書いているのでフルパスです。

フルパスで毎回記述するのは面倒臭いものです。

そこでプログラム名だけで実行を行うために。pathを通します。

pathを通し方

pathを通すを詳しく言うと「指定したフォルダを PATH という設定に追加する」と言う事です。

 

設定ファイルは.bash_profile

ホームディレクトリ直下の.bash_profileに通したいpathを記述する。

vi ~/.bash_profile

で編集できます。

僕はviの編集に慣れてなかったので、直接ファイルを開いて編集しました。

pathを通す

export PATH=$PATH:通したいPATHを記述

 .bash_profileを更新。

エディタで直接書いていれば保存でOK.

ターミナルから編集していれば

source ~/.bash_profile

 で更新できます。

 

pathの確認

最後にpathが通ったか確認します。

echo path

 これでpathを確認できます。

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/test/

こんな感じで読みにくいですが、:で区切りながら確認してください。

 

おしまい。

 

プログラミングのBGMとしてtech系のpodcastを聞いたら快適だった!

 

Podcastとは

インターネットラジオです。

スマホやラジオから無料で聞くことができます。

IOSなら最初から入ってる「podcast」っていう紫色のアイコンのアプリがそれですね。

 

プロからアマまで幅広いレベルとカテゴリーの配信が楽しめるのがウリです。

 

作業用BGMに良いサービスが見つからなかった

僕はプログラミング中に何かしらを垂れ流しながら作業する派です。

タイピングの音がカタカタ聞こえすぎると集中の妨げになるからです。

 

BGMに求めているのはこの辺りです。

・作業に集中できる心地よさ

・適度なインプット

・無料!

 

今までに色々なものを作業のお供にしてきました。

ざっとこんな感じ。

youtube

面白い!動画によっては面白すぎて作業を中断するレベル。

作業用のBGMにするには少しお腹いっぱいになりすぎる感がある。

 

あとプレミアムになっていないので、広告が鬱陶しい。

 

spotfy

spotfyとは

クラシックやジャズのプレイリストで流しているとすんなりゾーンに入れるので聴き心地は最強レベル!

 

ただインプットとしては期待できない。

またプレミアムじゃないと時々広告が入るのはマイナス。

voicy

voicyとは

インフルエンサーたちによるラジオ。

twitterをよくしている人は面白いと思います!

 

僕もいくつかのインフルエンサーのラジオを聞いてました。

中身的にはただのラジオです。

 

インフルエンサーたちは様々な媒体で発信活動をしていると思いますが、その一環という感じ。

voicyだけしか聞かないと、界隈に対してキャッチアップ出来ない事も増えてくるので、追っかけのインフルエンサーがいる人にのみ、おすすめといった印象を得ました。

 

podcastが全てを満たしていた!

そんな中、tech系のtwitterを漁ったいたらpodcastの存在にたどり着きました。

聴き心地がちょうど良い

番組によって構成は様々ですが、あまり編集でテキパキ進めている印象はないので、聞き流すのにちょうど良い濃度です。

 

またパーソナリティー2人などの雑談がメインなので、人の会話を横で聞いているような印象になり、まったりします。

 

価格帯が無料で広告なし!

番組によってはありますが、youtubeやspotfyであるようないきなり曲調と音量が変わってびっくりするようなことはありません!

 

パーソナリティーが軽く読み上げてる感じ。

さらに無料なので、気楽にいろんな番組を試し聞きできます

 

ちょうど良いインプットになる

これはパーソナリティーの腕なのですが、聞き流しているつもりなのに、面白い所は頭に残っている!みたいな現象が多々あります。

 

podcastは様々な番組があってその人にあったインプットがきます!

僕の場合はtech系、お笑い、都市伝説なんかをインプットしてます。

 

1日podcastだけ聞いててもコミュ力が下がらない!(気がする)

1日中引きこもって作業していると、少し社会から隔離されたような気持ちになることがあります。

 

「誰とも会話してないしよくないなー」的な感じで人恋しくなることも多々あります。

 

しかし、podcastを聞いていると常に横に会話があるので、コミュニケーションに加わっている感覚を得られるので、人恋しさみたいなものを微塵も感じません!

 

youtubeでも人が話しているのを聞けるのですが、あれはテレビを見ているのに近い感覚で、観測です。

 

その点、podcastはあまり会話を編集はしていない様なので、流れや空気感がそのまま残っています。なので、パーソナリティーの方達の会話をカフェで隣で聞きながら作業している感覚になるんですよね。

 

人恋しくならないです!笑

さらにコーディングなどでつかrていても、tech系のpodcastであるあるネタなんかに共感して癒されたります。

 

アニメ好きだとさらに楽しめます!笑

 

オススメのpodcast

 

最後に僕がよく聞くおすすめの番組をいくつか紹介します!

しがないラジオ

shiganai.org

 

 web系エンジニアの2人のパーソナリティーが業界について語ったり、ゲストの話を聞く番組です。

 

web系で働きたい!もしくは働いているエンジニアの方はインプットとして聞くと良いと思います。

イベント情報なども盛りだくさんで楽しく聞いてます。

 

更新頻度も高いので、日々のBGMとして塗油方するラジオです。

 

PHPの現場

エンジニア界隈ではもはや当たり前の様に知られているラジオ。

1つの話題に対してとことん掘り下げているので、エンジニアとして勉強になります。

 

PHPを使っている方なら一度は聞いて欲しいです。

雑談を聞くというよりは、講義を聞き流している感覚で完全に勉強用。

2~3週回しながら理解しています。

 

Rebuild

rebuild.fm

エンジニアなら知らない人はいないか!的なラジオ。

聞いたことない人は試しに聞いて欲しい。

 

エンジニア同士が、共通の話題で雑談している感じ。

このラジオが楽しい人は間違いなく、エンジニアの界隈と相性が合うんだと思う。

 

まとめ

作業中はtech系のpodcastがおすすめ!

作業も捗るし、エンジニアあるあるで癒される。

 

環境構築が上手く行かない時に意識している事

はじめに

この記事は、laravelの環境構築の時に100時間以上躓いた僕が、その経験から得た環境構築の際に意識しておきたい事をまとめたものです。

もう二度と、環境構築の公式のリファレンスも、qiitaの記事も、日本語で出てくる記事は全部試した! それでもどうしても上手く行かない!! 英語の記事も何と無くしか分からんから不安。と途方にくれることが無いように戒めをこめて書きました。

意識している事

環境構築で躓いてるときは、基本的に解決しようとして、かえって設定ファイルの中身をごちゃごちゃにしちゃってるケースが多いです。

初手で上手くいかない事は多々あるけど、そうなったらもう目につく記事を手当たり次第試すしかねえーー!っていう心理状態になってしまうので、より訳が分からなくなってしまうのです。

環境構築のおすすめ手順

1つの記事に絞って実行

初手は公式のリファレンス。その次はqiitaで人気があって読みやすい記事を選ぶようにしています。

リセットのためにdelete

上手く行かなかったらインストールしたファイルを全てデリートしましょう! この際、削除するだけだと完全に消えてない事があるので注意!!

ちゃんとアンインストールのコマンドを調べて実行してください。

再インストールちゃんとアンインストールできたら、再度インストール

mまた無理だったらエラー文確認して、記事探して、またdelete→インストール→環境構築

この流れが鉄板です。 記事は1つずつ。1記事1アンインストールぐらいの気持ちで何度も繰り返せば、パソコン内がぐちゃぐちゃになって袋小路に閉込められる事を防げます。

php artisan migrateが上手く行かなかった時の対処法/SQLSTATE[HY000] [1045]

はじめに

laravelのDB接続の際に、よく転ぶので、備忘録としてまとめました。

 エラーコード

   Illuminate\Database\QueryException  : SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES) (SQL: select * from information_schema.tables where table_schema = laravel_chat and table_name = migrations and table_type = 'BASE TABLE')

  at /Users/username/Desktop/laravel_chat/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668| 

  Exception trace:

  1   PDOException::("SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)")
      /Users/username/Desktop/laravel_chat/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70

  2   PDO::__construct("mysql:host=127.0.0.1;port=3306;dbname=laravel_chat", "root", "root", [])
      /Users/username/Desktop/laravel_chat/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70

  Please use the argument -v to see more details.

原因

原因を直接和訳すると 「root@localhostのアクセスが拒否された」的な感じでした。

エラーログでググってみるとどうもmysqlにうまく接続が上手くいっていないらしい。

試した事① database.phpと.envファイルの見直し

ググって出てきた記事はほとんどこれで解決できてるっぽいので試してみる。

'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'XXX'),
            'username' => env('DB_USERNAME', 'XXX'),
            'password' => env('DB_PASSWORD', 'XXX'),

こちらのdatabaseとusername,passwordの部分を見直しました!

さらに追加で

 DB_CONNECTION=mysql
 DB_HOST=127.0.0.1
 DB_PORT=3306
 DB_DATABASE=xxx
 DB_USERNAME=xxx
 DB_PASSWORD=xxx

こちらでもdatabase,username,passwordを見直しました 参考:https://qiita.com/mikaku/items/8e081e08090e814a57db

がしかし結果変わらず。

こうなると databaseやusername,passwordそのものが間違っているという説が濃厚になります!

その為,mysqlにログインして1つ1つ確かめて行きました。

試した事② mysqlにログインしてユーザー名やパスワードを思い出す!

mysqlログインする

mysql -u root(ユーザー名) -p;

パスワードを求められたが、さっきのファイルに書いたパスワードだとエラーになる!!

→パスワードが間違っていたことが発覚!!

何回か試した事で無事思い出せました。

案外、ユーザー名とパスワードをちゃんと覚えていない!っていうのもphp artisan migrateのエラー時の原因のあるあるなんじゃないかなーと思います。

試した事③ databaseの作成

show databases;でDBの一覧を確認したところ、laravelの.envなどのファイルで作ったはずのファイルが反映されていませんでした。

だから上手く接続できていなかったぽいです。

取り敢えず CREATE DATASBASE `データベース名`;で使いたいDBをmysqlから作っちゃいました!

これで一安心。

php artisan migrate成功!!

mysql内のdatabse,username,passwordとconfig.php、.envファイル内の値が一致して無事、php artisan migrateが成功しました。

結論

php artisan migrateで上手く接続できない時は

1 database.phpか.envの書き間違い 2 mysqlの設定値自体が間違っている

のどっちかが原因です。 ググった感じだとほとんどが、1の方についての言及なので、それでも上手く行かない人は2のmysqlの設定値自体が間違っている事を疑って見てください。

【Laravel初心者】ルーティングとコントローラーの基礎知識


title: 【Laravel初心者】ルーティングとコントローラーの基礎知識 tags: PHP7 Laravel author: terry_6518

slide: false

はじめに

こんにちは。てりーと申します! プログラミング歴が4ヶ月目に入ろうとしているエンジニアです。

今月からLaravelを触り始めたので、備忘録がてら記事の投稿をします。 ルーティングとコントローラについての基礎知識をさらっとまとめました。

何かご指摘やアドバイス、感想を言って頂けると幸いです。

参考文献

「PHPプレームワーク Laravel入門」  2章 ルーティングとコントローラ

ルーティング

ルーティングに関する情報は「routes」にまとまっています。

■ 一般的なwebサイト webサーバーの公開フォルダにファイルを用意しておいて、そこにアクセスしたら表示される。

■ Laravel アドレスに割り付けられたプログラムが実行される。その際の関連付けを行うのがルーティングです。 例:「○○にアクセスすると,××という処理を施される」

web.php

このファイルが一般的なwebサイトにアクセスする際に使うルーティングです。

<?php
Route::get('/', function () {
   return view('welcome');
});

'/'の部分は第1引数に割り当てられるアドレスを指します。 function () {......}の部分はそれによって呼び起こされる処理が入ります。

function () { return view('welcome'); }); では、「resouces/view」フォルダにある「welcome.blader.php」をレンダリングして表示しています。

コントローラー

具体的な処理を実装するために用意されているのがコントローラです。 LaravelはMVCと呼ばれるアーキティクチャーで、それぞれが

M:model データ処理を担当 V:view 画面処理担当。表示用のテンプレートなど C:controller 全体の制御担当。

となっています。

aritsanコマンドでコントローラー作成

php artisan make:controller コントローラー名

「app/Http/controller」フォルダ内に作成される。

アクション追加

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class HelloController extends Controller
{
  アクション
  }

class HelloController extends Controller controllerのクラスを継承

{ アクション} アクションメソットはここに入れる。

Route::get('hello','HelloController@index')

ルート情報の設定。 Route::get('hello','コントローラー名@アクション名')

まとめ

久々の投稿は自分の備忘録として使わせていただきました。 Laravelに慣れていないので、概念的な所を掴むのに苦労しています。

次はビューの部分をかじりつつ、実際にbladeテンプレートを作成してみたいと思います。

最後までご拝読ありがとうございました。

プログラミング初心者が3ヶ月でPHPの掲示板を作るまでにやった事〜その①〜

お疲れ様です!
てりー(https://twitter.com/teriteriteriri)です。

 

3月から勉強を始めたプログラミングだけど、5月にphpで掲示板を作るという1つの結果が出たので、振り返りをまとめておく。

 

何回かに分けてまとめるつもりで、今回は3月と4月の最初のところまで。

 

3月はフロントエンドの言語から入る!

最初はprogateとドットインストールに奔走する日々!

最初の2週間でHTML,css,js,jqueryあたりを軒並みやって100レベぐらいまで到達した。

f:id:terrywatson:20190518233727p:plain

この時はprogateでレベル上げするのが楽しくて、毎日10時間ぐらい没頭できた。これのおかげで簡素なHPぐらいなら自分でもできそう!って思えるようになった。

 

prog-8.com

ドットインストール

https://dotinstall.com

 

3月の後半は知り合いのコワーキングスペースのHPの制作!

知り合いにちょっと依頼されてHPの制作にあたりました。

って言っても3Pぐらいの簡単なwebサイトなんですけどね。

 

ワードプレスでは実際にコードを書かないので、progateで学んだことを生かしているというよりもは、ブログをカスタマイズしている感覚に近かったのを覚えています。

 

本を1冊,参考にして完全に独学でやった。

・1番わかりやすいワードプレスの教本

 

せっかくなのでポートフォリオとして見せたが、まだコワーキングスペースがオープンしていないので、まだ公には開示できない。

 

4月から本格的にPHPを始める

 

ちょうど、メガベンチャーのフルスタックのエンジニアの方が毎週日曜日にPHPの勉強会をするという事で、参加することにした。

 

そこで、5月末までに与えられた課題がPHPで以下の機能を持つ掲示板を作ることだったので、そのタイミングで覚悟を決めてプログラミングに当たることに決めた。

 

ー掲示板に必要な機能ー

✓アカウントの新規作成ができる
(ニックネーム、メアド、パスワードを入力する)
✓ログインができる(メアドとパスワードで認証する)
✓ログインしたあとであれば書き込みができる
✓書き込みのとき、ニックネーム、投稿内容、投稿日時をデータベースに保
存する
✓ログインしている・していないに関わらず、他の人が書いた書き込みが見
られる
✓書き込んだ人は、自分の書き込みを消すことができる
✓ソースコードをgithubで管理する
✓攻撃に耐えうる作りにする

 

掲示板に着手し始めたあたりで、今回はここまで。

〜その②〜はPHPでの最初の1-2週間の環境構築などをメインに書きます。

 

てりー。

 

 

 

カッコ良いお金の使い方を考察したい。

 

こんにちは、てりーです。

 

 

今日、ふと見た知り合いの記事。

note.mu

 

お金を寄付したという行動が、自分が豊かです!って自分に暗示してくれる。

だから、お金持ちになったら寄付をする!ではなくて、今寄付することに意味があるということです。

 

とても納得。

寄付などに限らず、自分は豊かにお金を使えてるっていう感覚が、豊かさの根源にありそう。

 

お金の使い方が豊かさを作る!!

 

ということで、自分の中でいけてるなーと思うお金の使い方ができているかをちゃんと振り返るべきだなーと思いました。

 

俗にいう、消費、浪費、投資。とかまで細かく噛み砕いていかなくても。

あのお金の使い方はイケてたなー。とか

あのお金の使い方は良かったなー。と思うものを、定期的に振り返ります。

 

そうすることで、自分にとっての豊かなお金の使い方を見つけていきます。

 

1ヶ月スパンとかで振り返るのが1番良さそう。

ちょっと振り返り方に関してはもう少し詰めますが、

自分のとってかっこ良い!と思えるお金の使い方を考察するのは、イケてる習慣になりそうなので、ワクワクしてます!

 

 

 

 

 

 

 

 

 

 

最速で目標を達成するタイムマネジメント[レバレッジ時間術]

こんにちはー!

先日、本田直之さんの「レバレッジ時間術」を読んで、個人的に重要だと思った部分のまとめです!

 

f:id:terrywatson:20190416163310j:plain

 

この記事がおすすめの人

・タイムマネジメントの具体的なほうほいうを学びたい人

・時間を今より効率良く使いたい人

 

 

時間の自由に作るには仕組みづくりが重要

f:id:terrywatson:20190413150436j:plain

どの職業の人も、与えられている時間は皆平等で24時間です。

けれども、旅行によく行ける人、逆にせかせかして切羽詰まってる人など時間の面ではとても差がついています。

 

そこの差はいかに日々の仕事自分のやるべきことを、仕組みができているか!から生まれています。

 

例えば、wordで1000文字打つのに1時間かかっていたとします!

これを毎日続けるなら毎日1時間かかりますね!

 

だけど1週間かけてブラインドタッチを覚えたとしたら、1000文字が20分で終えられるようになりました!!

 

こうなるとブラインドタッチを覚えた次の日からは覚える前の1/3の速度で仕事が終わるので、時間に余裕が生まれるんですね!

 

これが仕組み化です!

仕組みを作るまでは今まで以上に労力がかかることもありますが、そこを乗り越えることで将来的に莫大な時間を生み出すことができます!

 

 

仕組みづくりの方法

f:id:terrywatson:20190416163724p:plain

1 全体の把握 

まずは全体を把握することから始めます!

 

実際にその仕事を終える為に、何をしなくちゃいけないのかを考えます。

特に、その中で特に面倒だなぁとか、時間がかかりそうだなーって部分はどこなのかを見極める作業がこの全体の把握になります。

 

2 スクリーニング 

次はスクリーニングです。

スクリーニングではさっき全体を把握した中で、一番その成果を達成するために重要だなって思う部分や、仕組み化をここはすべきだなって思う部分を順位付けしていきます。

そして、その順位の高いものから実際に仕組みを作っていきます。

 

3 実際にリソース投下

実際に時間やお金などのリソースを使って仕組みを作っていく。

 

スケジュールにはまず課題ありき

f:id:terrywatson:20190413150211j:plain

課題を達成することから逆算してスケジュール立てる

スケジュールは常に目標ありきで、そこから逆算して作るべきです!

目標って聞くと、煌びやか大学合格!とかそういうものばっか浮かぶかもしれないんですね。

でも、そうじゃなくて、もっといろんな日々の生活なんかに転がってる課題に目を向けると目標設定をしやすいです!

 

課題っていうとすごいネガティブなイメージも強いかもしれないけど、

ポジティブなものも吸い上げて行きましょう!

ここもっとこうやったらよく出来るんじゃないか!とか、

ここもっとこうしたら早くなるよね!みたいなものを課題として取り上げてると良いです。

 

そう言った課題を日頃から意識してリストアップしていると目標設定がスムーズになります!

 

課題→週の課題→日々の課題→タスクリスト(googleカレンダー)

課題が見つかったらそれを達成する為に、月の目標、週の目標とブレイクダウンしていって日々の目標まで立てておきます。

 

そして当日の朝に今日の目標を見ながらgoogleカレンダーにタスクリストを記入して行きます!

この際に本日の時間割りを作る感覚で行うと実行しやすいです!

 

仕事は80点か120点かで分ける

f:id:terrywatson:20190416164550j:plain

仕事に関しての小ネタですね。

実際に仕事は大きく分けて80点の仕事は120点の仕事かに分かれます。

 

80点の仕事はスピード重視です。

ある程度の内容で良いから期限内にしっかり提出。その後のコミュニケーションもしっかりして擦り合わせしてすればいいよっていうものです。

 

ぶっちゃけ全体の8割ぐらいは80点でオッケーの仕事に当たります!笑

80点の仕事だって思ったら出来に過度にこだわらず、そのぶんスピードを上げることで信頼を獲得しましょう!

 

次に信頼を獲得したい!って時には120点の仕事してください。

これは本当にミスは許されなかったり、どうしても信頼を作りたい相手などとの仕事の時です!

相手の事を色んな想定パターンを考えて、相手の為を思ってやってください。


そこまで突き抜けないと信頼って稼げないんですね!

なのでここぞ!って時だけで良いです。

 

それ以外の時は80点の出来でスピード早めで!笑

 

目標達成に必要なのは過去問!

f:id:terrywatson:20190311152451j:plain

ポイントはどこなのかは過去問でわかる!

よく受験とかだと過去問って使いますよね!

あの実際に合格するための問題があってこの問題が解ければ合格できるよってやつです。

これをベースにみんな年間の受験のスケジュール立てると思います。


その過去問が実はビジネスとか仕事の意味でもめちゃくちゃ重要なんですね!

受験みたいに赤本とか声の教育者とかが出版してくれてないです。

 

代わりに色んな成功者とか実際に成りたいと思ってる事をできてる人とか色んな人にインタビューすることで自分なりの過去問を作っていく訳です。

 

まだビジネス書などもめちゃくちゃ良い過去問になります!

だから本を読むことは重要なんですよね。

 

まとめ

・時間を作るには仕組み化が必須!

・仕組み作りは「全体の把握」→「スクリーニングで順位付け」→「リソース投下で仕組み化開始」の順で行う

・日々の目標は課題ありき!常に日頃感じる課題はメモっておくと良い!

・世の中の仕事は80点か120t点に分けて行うべき!濃淡を使い分けよう!

・スケジュールには過去問ありき!実際の成功者やビジネス書から自分なりの過去問を作ろう!