読者です 読者をやめる 読者になる 読者になる

Go

【Go】Echoで404ページと500ページを表示

Echoを使っていてデフォルトのままで存在しないURLにアクセスするとNotFoundのJSONがレスポンスとして返される。 今回はAPIでなくてサイトを作りたかったのでHTMLを返したかった。ちょっとやり方がわからなかったので今回は以下のように対応した。Echoで定義…

【Go】Echoでのテンプレート(html/template)の使い方メモ

はじめに Echoでテンプレートの使い方を調べたのでメモ。今回やりたかったことはそんな多くなくて ・URLによってテンプレートを振り分けたい ・ヘッダー等の共通テンプレートを使いまわしたい 実装 まずはメインの処理server.go package main import( "net/h…

【Go】ログ出力先をファイルに変更 - echo logger

Go

マニュアルにあったとおりだけどメモメモ package main import ( "os" "net/http" "github.com/labstack/echo" "github.com/labstack/echo/middleware" ) func main() { e := echo.New() fp, err := os.OpenFile("/path/to/log", os.O_RDWR|os.O_CREATE|os.O…

【Go】gormで実行したsqlをファイルへログ出力する方法メモ

Go

開発時またはリリース後もしばらくはSQLは全てログに残しておきたいのでそのやり方を調べたのでメモ。http://jinzhu.me/gorm/advanced.html#logger ドキュメントにそれっぽいのがあった package main import ( "log" "os" "github.com/jinzhu/gorm" _ "githu…

【Go】dbrでinsertしてlast_insert_idを取得する

Go

dbrを使ったdb処理でinsertしてオートインクリメント値を取得したいということ。 READMEみてもよくわからなかったけど、コードみたらLastInsertIdというのがあった。 package main import ( "fmt" "strconv" _ "github.com/go-sql-driver/mysql" "github.com…

【Go】stringをtime.Timeに変換(日時文字列→時刻)

Go

今回やりたかったことはMySQLのdatetime型のカラムから取得した値をGoの時刻型に変換したかったということ。 なかなかうまくいかず以下にたどり着いた date := "2016-12-22 23:01:00" layout := "2006-01-02 15:04:05" t, _ := time.Parse(layout, target) f…

【Go】設定ファイルなどを非公開にして無料Githubでプロジェクト管理する

はじめに Githubのアカウントは持ってたけどコード管理したりはしてなかった。 で、今回試しに使ってみようかと思った。 個人用途なので無料のパブリックなレポジトリで。基本的にコードの中身は見られても問題ないけどアカウントやファイルパスなどは公開し…

【Go】Twitter Search APIを使ってみる

Go

はじめに やりたいことはキーワードでtwitterの投稿を取得してくるだけちょっとだけプログラムいじった箇所は以下 ・1回で取得できる件数の上限(100件)が決まっているので複数回取得するようにする ・タイムゾーンをJSTに パッケージ 今回使ったパッケージは…

【Go】direnvとglideで開発環境構築してパッケージ管理

Go

はじめに 開発始めようとして以下が問題があったので整理しておく。前提条件としては以下 ・複数人での開発で各々のPCで開発を想定 ・コードはgitで管理で、サードパーティのパッケージをどう管理するかとういのが問題点でした。 そのままやると$GOPATH以下…