tech

627 件の記事

2020

max-widthとbox-sizingについて

10年以上web系プログラマをやっているが、CSSに関してはまじで苦手。 今回はまったのは、max-widthを指定している箇所に対してwidth:100%のboxみたいなCSSを書いた場合にはみ出てしまう問題が発生した。 はみ出す原因 width: 100%がContentの幅になるので、margin, paddin…

gcloud firestore emulatorに接続できない問題について

GAE/go + Cloud Firestoreで開発をしようと思いローカルでエミュレータを使ってみた。 エミュレータを使う流れは以下の通り。 gcloud コマンドでエミュレータを起動 FIRESTORE_EMULATOR_HOSTの値を設定 gcloud コマンドでエミュレータを起動 $ gcloud beta e…

TypeScriptでPromise<T>な戻り値でnullが返ってくる問題について

最近TypeScriptでサーバサイドの実装をしている。 特に問題なく快適にかけているが、やっぱりハマるところがある。 それは「Promise<T>な戻り値でnullが返ってくる」という問題。 何が起きたのか? Fireormを使ってfirebaseのCloud Firestoreからデータを取得しようと以下のようなコ…

gcloudコマンドでのプロジェクトの切り替えとか

gcloudコマンドで、アカウントの切り替え、プロジェクトの切り替え方法がわからない。 調べてみたので記録に残しておく。 アカウント どのアカウントと紐付いているかは以下のコマンドで確認ができる $ gcloud auth list Credentialed Accounts ACTIVE ACCOUNT xxxxxx…

GAE/Goでweb framework的なものを使う

Goで使うweb frameworkを探していたらこんな意見を頂いた。 https://twitter.com/polidog/status/1294470730646564865 Goはnet/httpのパッケージは良くできているのでいらないかもしれない。 ただ、以下の点は気になった。 HTTPメソッドの指定 Mid…

久しぶりのGAE/go

2017年ぐらいはちょいちょいGAE/goとか触ってたんですが、すっかりご無沙汰になっていました。 久しぶりにgolangやGAE/goを触って楽しいなぁと。 今回の学んだこと とりあえずアプリを作ってdeployする データストアを使かったローカルでの開発を試す とりあえずアプリを作ってdeployする gcloud…

NelmioApiDocBundleでJsonSchemaファイルを活用する

nelmio/NelmioApiDocBundleでスキーマの定義するのは結構だるいことが多いです。 @Model アノテーションとか使って簡単に定義することもできますが、最終的にJSONになるのにクラスにマッピングしてレスポンス返すのが微妙だと感じる場合もあると思います。 そこで、JsonSchema活用できないかな…

Symfony4.4をGAE/phpで動かす

GAE/php(Standard Environment)でSymfony4.4を動かす機会があったのでRun Symfony on App Engine standard environmentをみながらSymfonyを動かしました。 発生した問題 「composer install後のauto-scriptsでエラ…

GithubActionsでMySQLが動かなくなった件

2ヶ月ぐらい放置してたプロジェクトのGithub Actionsでテストを走らせたらMySQLがエラーになって落ちてた・・・。 ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111) こんな感じにMySQLに接続できないというエラーが…

SymfonyのRememberMeについて調べてみた

SymfonyのRememberMeとはなんぞや?今まで雰囲気で使ってたので調べてみた。 RembemerMeとは? どのように実現しているのか? RememberMeとは? 公式ドキュメントによると以下のように記載されている。 ユーザーが認証されると、通常、ユーザーの資格情報がセッションに保存されます。つまり、セッシ…

KnpUOAuth2ClientBundleでSign in with Appleに対応する

KnpUOAuth2ClientBundleで「Sign in with Apple」の対応する際にちょっとハマったのでメモしておきます。 もともとKnpUOAuth2ClientBundleはデフォルトで「Sign in with Apple」に対応しています。 https://github.com/knpunive…

SymfonyのTypeTestCaseでvalidatorをモックする

FormTypeで独自で定義したバリデーションを使う場合に、TypeTestCaseを使ってテストを実装するこが多いかと思います。 constraintsを設定している場合は Extensions を使うことでテストすることが出来ます。 <?php namespace App\Form\Type; use App\En…

Symfony Local Web Serverでxdebugを設定する

久しぶりにSymfonyを触っていてい落ち着く僕です。 新しいプロジェクトでSymfonyを使おうと思ってsymfony/web-server-bundleをcomopserでinstallしたら、deprecatedとか出てて何事かと思ったらどうやら5.0でなくなるらしい・・。 代わりにSymfony Local W…

2019

helicon/object-mapperを作った

この記事は「PHP Advent Calendar 2019」の12日目の記事です。 今年の10月にちょっと時間が空いてたので、helicon/object-mapperを作りました。 helicon/object-mapperとはなんなのか? 連想配列からオブジェクトへ変換するためのライブラリです。 単純に、連想配列…

JsonSchemaBundleを作った話

Symfony Advent Calendar 2019 2日目の記事です。 昨日は@77webさんのSymfony4.4正式リリース前に4.4.x-devで開発し始めたプロジェクトを4.4.0正式版にアップデートするでした。 ptyhard/JsonSchemaBundle ptyhard/JsonSchemaBun…

会社のホームページをNuxtで作ってfirebaseでhostingして、Github Actionsでデプロイできるようにした

PartyHard Inc. 最近ホームページみられる機会増えたし、お問い合わせフォームからはウザい宣伝ばかりくるので、ホームページが見られる機会も増えたのでリニューアルしました🎉 前回のホームページよりマシな気がしますが、そんなこともない気がします。 (誰かデザインやってくれる人いないですかね...費用はほとんど出せ…

BEAR.SundayのResourceのCacheについて調べたことメモ

最近お仕事でBEAR.Sundayを使っているのですが、キャッシュについての知識を深めるために調べてみました。 雑ですがメモとして記事に残しておきます。(随時更新予定) Resourceのキャッシュストレージについて DevではDoctrineのArrayCacheが使われている (リクエスト終了ごとにキャッシュは消え…

vuex-jsonschema-validationを作っている

GitHub - polidog/vuex-jsonschema-validation: A vuex state validation plugin on change state. 作りました。 これは何をするものなかの? vuexのstateをjson schemaを使ってvalidationするvuex-plu…

SymfonyのCompilerPassで%env()%を利用する方法について

Symfonyではservices.yamlの中でenvの指定をすることが出来ます。 services: database_url: '%env(DATABASE_URL)%' こんな感じに指定してた場合にCompilerPassで参照すると文字列として返ってきてしまいます。 <?php class TestPass …

imagecowでobject-fit coverみたいに画像をリサイズする

CSSのobject-fit便利ですよね。 object-fit: coverと同じような形で画像の加工をしたいのですが、phpで実装するとなると結構めんどくさいわけです。(そんなこともない気がするけど) ということでライブラリを探したらこれを見つけました。 oscarotero/imagecow 使い方はすごくシンプ…

ExpoのwebviewでローカルにあるHTMLを表示する

最近Expo使ってiPhone,Android向けのアプリの開発を行っている僕です。 最近は全然php書いてなくて切ないです。 さて、今日はExpoでWebViewを使ってローカルにあるHTMLファイルを表示するのに苦労したお話をします。 バージョンについて "dependencies": { "expo": "^33…

DIとは何か?

DIとはなにか? 先日のEC-CUBEのイベントに出てから、自分の発表はDIを解っている前提だったなぁーという反省もあり、DIとは何かを改めて考えていきたいと思いました。 DIとは何かをwikipediaから見てみる 依存性の注入 日本語でいうと「依存性の注入」。 Wikiに書いてある説明は以下の通り。 コンポーネント…

PHPerKaigi2019に参加してきました

PHPerKaigi2019に参加してきました。 今年もすごく楽しかったです。(語彙力がなさすぎる...) 前夜祭は体調不良で行けなかったものの、2日間参加することが出来ました。 Symfony相談会 1日目のIRT枠が空いていたので、Symfony相談会を急遽やることになりました。 https://twitter.c…