Sha256: a23f904c55fb9338a5ca768fb73ca9d3f27ac63c12b687ae833ea99859d07a84

Contents?: true

Size: 638 Bytes

Versions: 4

Compression:

Stored size: 638 Bytes

Contents

<%-
import 'context'
import model.package
import 'datastore'
import 'log'
import 'goon'
-%>

func (s *<%= type.name %>) Exist(ctx context.Context, m *<%= model.qualified_name %>) (bool, error) {
	if m.ID == 0 {
		return false, nil
	}
	g := goon.FromContext(ctx)
	key, err := g.KeyError(m)
	if err != nil {
		log.Errorf(ctx, "Failed to Get Key of %v because of %v\n", m, err)
		return false, err
	}
	_, err = s.ByKey(ctx, key)
	if err == datastore.ErrNoSuchEntity {
		return false, nil
	} else if err != nil {
		log.Errorf(ctx, "Failed to get existance of %v because of %v\n", m, err)
		return false, err
	} else {
		return true, nil
	}
}

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
goon_model_gen-0.4.3 lib/goon_model_gen/templates/store/goon/16_Exist.go.erb
goon_model_gen-0.4.2 lib/goon_model_gen/templates/store/goon/16_Exist.go.erb
goon_model_gen-0.4.1 lib/goon_model_gen/templates/store/goon/16_Exist.go.erb
goon_model_gen-0.4.0 lib/goon_model_gen/templates/store/goon/16_Exist.go.erb