本文整理汇总了Golang中github.com/corestoreio/csfw/store.TableWebsiteSlice类的典型用法代码示例。如果您正苦于以下问题:Golang TableWebsiteSlice类的具体用法?Golang TableWebsiteSlice怎么用?Golang TableWebsiteSlice使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了TableWebsiteSlice类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: getAttributeValuesForWebsites
// getAttributeValuesForWebsites creates a map where the key is the attribute ID and
// each part of the StringEntities slice are the full attribute values for a website ID.
func getAttributeValuesForWebsites(ctx *context) map[string][]codegen.StringEntities {
var tws store.TableWebsiteSlice
tws.Load(ctx.dbrConn.NewSession(nil), func(sb *dbr.SelectBuilder) *dbr.SelectBuilder {
return sb.Where("website_id > 0")
})
// key contains the attributeID as a string
var aws = make(map[string][]codegen.StringEntities)
tew, err := ctx.aat.TableEavWebsite()
codegen.LogFatal(err)
if tew != nil { // only for those who have a wbesite specific table
for _, w := range tws {
aCollection, err := codegen.LoadStringEntities(ctx.db, getAttrSelect(ctx, w.WebsiteID))
codegen.LogFatal(err)
for _, row := range aCollection {
if aid, ok := row["attribute_id"]; ok {
if nil == aws[aid] {
aws[aid] = make([]codegen.StringEntities, 0, 200) // up to 200 websites at once
}
aws[aid] = append(aws[aid], row)
} else {
codegen.LogFatal(errgo.Newf("Column attribute_id not found in collection %#v\n", aCollection))
}
}
}
}
return aws
}
示例2: TestTableWebsiteSliceLoad
func TestTableWebsiteSliceLoad(t *testing.T) {
db := csdb.MustConnectTest()
defer db.Close()
dbrSess := dbr.NewConnection(db, nil).NewSession(nil)
var websites store.TableWebsiteSlice
websites.Load(dbrSess)
assert.True(t, websites.Len() > 2)
for _, s := range websites {
assert.True(t, len(s.Code.String) > 1)
}
}
示例3: TestTableWebsiteSliceLoad
func TestTableWebsiteSliceLoad(t *testing.T) {
dbc := csdb.MustConnectTest()
defer dbc.Close()
dbrSess := dbc.NewSession()
var websites store.TableWebsiteSlice
websites.SQLSelect(dbrSess)
assert.True(t, websites.Len() >= 2)
for _, s := range websites {
assert.True(t, len(s.Code.String) > 1)
}
}
示例4: TestTableWebsiteSlice
func TestTableWebsiteSlice(t *testing.T) {
websites := store.TableWebsiteSlice{
&store.TableWebsite{WebsiteID: 0, Code: dbr.NewNullString("admin"), Name: dbr.NewNullString("Admin"), SortOrder: 0, DefaultGroupID: 0, IsDefault: dbr.NewNullBool(false)},
&store.TableWebsite{WebsiteID: 1, Code: dbr.NewNullString("euro"), Name: dbr.NewNullString("Europe"), SortOrder: 0, DefaultGroupID: 1, IsDefault: dbr.NewNullBool(true)},
nil,
&store.TableWebsite{WebsiteID: 2, Code: dbr.NewNullString("oz"), Name: dbr.NewNullString("OZ"), SortOrder: 20, DefaultGroupID: 3, IsDefault: dbr.NewNullBool(false)},
}
assert.True(t, websites.Len() == 4)
w1, err := websites.FindByWebsiteID(999)
assert.Nil(t, w1)
assert.EqualError(t, store.ErrIDNotFoundTableWebsiteSlice, err.Error())
w2, err := websites.FindByWebsiteID(2)
assert.NotNil(t, w2)
assert.NoError(t, err)
assert.Equal(t, int64(2), w2.WebsiteID)
w3, err := websites.FindByCode("euro")
assert.NotNil(t, w3)
assert.NoError(t, err)
assert.Equal(t, "euro", w3.Code.String)
w4, err := websites.FindByCode("corestore")
assert.Nil(t, w4)
assert.EqualError(t, store.ErrIDNotFoundTableWebsiteSlice, err.Error())
wf1 := websites.Filter(func(w *store.TableWebsite) bool {
return w != nil && w.WebsiteID == 1
})
assert.EqualValues(t, "Europe", wf1[0].Name.String)
}
示例5: TestTableWebsiteSlice
func TestTableWebsiteSlice(t *testing.T) {
websites := store.TableWebsiteSlice{
&store.TableWebsite{WebsiteID: 0, Code: dbr.NullString{NullString: sql.NullString{String: "admin", Valid: true}}, Name: dbr.NullString{NullString: sql.NullString{String: "Admin", Valid: true}}, SortOrder: 0, DefaultGroupID: 0, IsDefault: dbr.NullBool{NullBool: sql.NullBool{Bool: false, Valid: true}}},
&store.TableWebsite{WebsiteID: 1, Code: dbr.NullString{NullString: sql.NullString{String: "euro", Valid: true}}, Name: dbr.NullString{NullString: sql.NullString{String: "Europe", Valid: true}}, SortOrder: 0, DefaultGroupID: 1, IsDefault: dbr.NullBool{NullBool: sql.NullBool{Bool: true, Valid: true}}},
nil,
&store.TableWebsite{WebsiteID: 2, Code: dbr.NullString{NullString: sql.NullString{String: "oz", Valid: true}}, Name: dbr.NullString{NullString: sql.NullString{String: "OZ", Valid: true}}, SortOrder: 20, DefaultGroupID: 3, IsDefault: dbr.NullBool{NullBool: sql.NullBool{Bool: false, Valid: true}}},
}
assert.True(t, websites.Len() == 4)
w1, err := websites.FindByID(999)
assert.Nil(t, w1)
assert.EqualError(t, store.ErrWebsiteNotFound, err.Error())
w2, err := websites.FindByID(2)
assert.NotNil(t, w2)
assert.NoError(t, err)
assert.Equal(t, int64(2), w2.WebsiteID)
w3, err := websites.FindByCode("euro")
assert.NotNil(t, w3)
assert.NoError(t, err)
assert.Equal(t, "euro", w3.Code.String)
w4, err := websites.FindByCode("corestore")
assert.Nil(t, w4)
assert.EqualError(t, store.ErrWebsiteNotFound, err.Error())
wf1 := websites.Filter(func(w *store.TableWebsite) bool {
return w.WebsiteID == 1
})
assert.EqualValues(t, "Europe", wf1[0].Name.String)
}