はい!今やってます!

Work Pertly, Live Idly

2019-01-01から1年間の記事一覧

GormのPreloadでorder by構文を使いたくなったとき

GormでPreloadの中でorder by 呼びたくなった場合、以下のような書き方(Preloadの中に記述)をすると、 Preloadの中身をよしなにorder byしてくれる。 Preloadの条件式(where)との併用も可能。 err := tx. Limit(limit). Offset(offset). Where("status = ?…

シェルの引数あれこれ

シェルで引数を取得したい場合は $1:1つ目の引数 という感じで取得できるが、 $0:実行時のコマンド名 $#:引数の数 $@:実行時に指定された全パラメーター というような指定も可能。 というのは割と常識なんだけど、 $BASH_SOURCE:実行時のコマンド名 と…

パイプラインの左側でエラーが発生したら処理を止めたい

bashに-eのオプション #!/bin/bash set -eu をつけたとしても、パイプラインの左側のコマンドにエラーがある場合に処理が停止しない。 が pipefailのオプション set -euo pipefail を設定してやると この場合は"hoge"が出力されるが #!/bin/bash set -eu fal…

MySQLでauto incrementカラムに0を入力したくなってしまった場合

このコマンドを打てば0も入力できる。 ただし0を0として認識するようになる。 (デフォルトの挙動は0またはnullのときに自動採番) set global sql_mode='NO_AUTO_VALUE_ON_ZERO'; 何故かオペレーションで必要になった。

LaravelでBasic認証を設定する

l5-very-basic-auth:5.*を利用する。 パッケージをインストールする composer require olssonm/l5-very-basic-auth:5.* サービスプロバイダーへ登録する config/app.php 'providers' => [ Olssonm\VeryBasicAuth\VeryBasicAuthServiceProvider::class, ], 設…

Google Cloud SDKのインストールとGAEデプロイの方法(gcloudコマンド)

ダウンロード curl https://sdk.cloud.google.com | bash シェルを再起動 exec -l $SHELL gcloud init を実行して gcloud 環境を初期化 gcloud init デプロイ gcloud app deploy ログストリーム gcloud app logs tail -s default ブラウザで確認 gcloud app …

php.iniのパスを簡単に探す

php

php --ini php -i php -r "echo phpinfo();" | grep "php.ini"

Laravel関連のコマンド・コード覚書き

Laravel関連のコマンド・コード覚書き Check routes php artisan route:list -v Generate controller sample php artisan make:controller JobController --resource php artisan make:controller UserController --resource php artisan make:controller Us…

GormのPreload時のstatusチェックの挙動

GormのSQLでPreloadを利用する場合、各モデルと紐付けるタイミングで条件を指定したくなる場合がある。 Preloadに条件指定する場合に、上手く実行されるケースとされないケースがある。 こちらは正しくすべてのテーブルでstatusが指定される。 func (questio…

ginでcontextからHeaderの情報を取得する方法

ginでcontextからHeader情報を取得したいときは key := c.Request.Header.Get("key") こんな感じで取得可能。 以上

logrusでログの行数とファイル名を出力したい

logrusを利用していて、ファイル名(filename)や行数(line number)を出力したくなったときは、 SetReportCaller(true) という感じのメソッドを呼んでやればよい package main import ( log "github.com/sirupsen/logrus" ) func main() { log.SetReportCaller…

.ruby-versionsを設置しよう

Railsのプロジェクトをはじめたら、rubyのバージョンを統一するために「.ruby-version」を配置しよう。 rbenv local コマンドで作成することができます。

著作権フリーの顔写真が大量に公開された

Deep Learningを使って生成された大量の顔写真(10万枚)が公開されたらしい。 これは非常に使い勝手がいいので覚えておこう。 generated.photos 著作権フリーの顔写真

GolangでサクッとStructの中身が知りたいとき

ここらへんでサクッと見れる fmt.Printf("%+v\n", hogehoge) fmt.Printf("%#v", hogehoge)

Dartでhttpパッケージを使ってAPIリクエストを投げたらCERTIFICATE_VERIFY_FAILEDになるときの対応方法

この記事は何? Flutterのhttp/http.dartパッケージを使ってAPIリクエストを投げたら、送信先のサーバーが証明書を設定しておらずCERTIFICATE_VERIFY_FAILEDになるときの対応方法。 証明書エラーを無視してリクエストを送信したいときの方法を記載しています…

優れたデータビジュアライゼーションのサンプルを提供する「Data Viz Project」

ビジネスマンは常日頃からスライド作ったり、状況を報告したり、 どうしたら直感的に情報が伝わって、相手とも情報をもれなく共有することができるか、 常に頭を悩ませていますよね。 データをビジュアライズして初めて見えてくるファクトも多いと思います。…

Flutterのコマンドまとめ

パッケージ インストール方法 公式ドキュメント Fetch data from the internet - Flutter dependencyに記載する dependencies: http: ^0.12.0+2 パッケージ取得 flutter packages get pub get flutter pub get 主要パッケージ http http | Dart Package

pipenvでmysqlclientをinstallしようとするとエラーになる時の対処

pipenv install mysqlclient でmysqlclientをinstallしようとするとエラーになった。 ➜ hogehoge git:(master) ✗ pipenv install mysqlclient Installing mysqlclient… Adding mysqlclient to Pipfile's [packages]… ✔ Installation Succeeded Installing de…

bashでローカル変数を扱う

#!/bin/bash function foo() { # ①ローカル変数を定義して代入 # local hoge = "hoge" # ②ローカル変数を定義 local fuga # ローカル変数に代入 fuga="fuga" } foo echo $hoge # 空出力 echo $fuga # 空出力

TwitterのOAuthの流れを整理しておく

これはなに SPAでTwitterのOAuthを実装しようとしていたのだけど、 Twitter Developerで取得できる Consumer API key Consumer API key secret このあたりをどうやって隠蔽するのかというのを考えていたらよくわからなくなってきたので、 基礎知識としてサー…

ファイル末尾に自動的に改行文字を挿入する(VSCode)

VSCodeを利用していて、ファイルの末尾に自動的に改行コードを加えたくなるときがありました。 具体的にはSchema作成用のSQLファイルを作っていると、最後に改行文字が必要なのですが、 大体これを入力し忘れる。 自分はメインのエディタがVSCodeなので、VSC…

LaravelでAjaxリクエストかFormリクエストかどうかは誰が判定しているか

LaravelでAPIを書いていて、適当なRestClientを使ってリクエストを送った際に、 Validationエラーで引っかかると、HTTPステータスコード302でリダイレクトされるということがあった。 APIなので、単純にValidationのエラー結果をjsonなりで返してくれればい…