golangメモ一覧(自分用まとめ)FrameworkはRevel

More than 1 year has passed since last update.

二項比較演算子の関数

  • eq : a == b の場合trueを返す
  • ne : a != b の場合trueを返す
  • lt : a < b の場合trueを返す
  • le : a <= b の場合trueを返す
  • gt : a > b の場合trueを返す
  • ge : a >= b の場合trueを返す

例:revelでのテンプレートの場合

{{if .user.Article.Published eq true}}<b>公開記事</b>{{else}}<b>非公開記事</b>{{end}}

[]の意味

スライス
可変長配列を持たない代わりに実装された型。
配列全体のポインタ(ptr)、配列の長さ(len)、配列の容量(cap)からなるデータ構造を保持している。配列の部分列を簡単に取り出せる。
Go言語では、配列よりもスライスのほうが多く使われる。
参考サイト
http://qiita.com/mizukmb/items/b543f88bc37c9a75673f

Preload

user := models.User{}
if err := DB.Preload("Article").Find(&user, id).Error; err != nil {
    return c.HandleInternalServerError("Record Find Failure")
}
return c.Render(user, id)

article id = 1の場合のSQL

SELECT  * FROM `user`  WHERE (`user`.deleted_at IS NULL OR `user`.deleted_at <= '0001-01-02') AND ((id IN ('1')))

SELECT  * FROM `article`  WHERE (`article`.deleted_at IS NULL OR `article`.deleted_at <= '0001-01-02') AND ((user_id IN ('1')))

勉強のための自分メモです。
今後も勉強したものを追加していきます。
間違っている箇所やもっと簡潔に書けたりするコードがありましたら教えてください。

※まだ、勉強途中なので誤情報があるかもしれません。ご了承ください。
また、誤字脱字もご了承ください!

カテゴリ:Default 時間:2016-02-25 人気:0
この記事では、 Revel golang

関連記事

Copyright (C) socapnw.com, All Rights Reserved.

Socapnw All Rights Reserved.

processed in 0.347 (s). 9 q(s)