本文整理汇总了Golang中github.com/jmcvetta/neoism.Database.CreateNode方法的典型用法代码示例。如果您正苦于以下问题:Golang Database.CreateNode方法的具体用法?Golang Database.CreateNode怎么用?Golang Database.CreateNode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/jmcvetta/neoism.Database
的用法示例。
在下文中一共展示了Database.CreateNode方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: create
func create(db *neoism.Database) {
kirk, err := db.CreateNode(neoism.Props{"name": "Kirk", "shirt": "yellow"})
if err != nil {
log.Fatal(err)
}
fmt.Println(kirk.Properties()) // map[shirt:yellow name:Kirk] <nil>
// Ignoring subsequent errors for brevity
spock, _ := db.CreateNode(neoism.Props{"name": "Spock", "shirt": "blue"})
mccoy, _ := db.CreateNode(neoism.Props{"name": "McCoy", "shirt": "blue"})
r, _ := kirk.Relate("outranks", spock.Id(), nil) // No properties on this relationship
start, _ := r.Start()
fmt.Println(start.Properties()) // map[name:Kirk shirt:yellow] <nil>
kirk.Relate("outranks", mccoy.Id(), nil)
spock.Relate("outranks", mccoy.Id(), nil)
}
示例2: getOrCreateNode
func getOrCreateNode(db *neoism.Database, label string, key string, value string, props neoism.Props) *neoism.Node {
res := []struct {
// `json:` tags matches column names in query
N neoism.Node
}{}
//MATCH (n:Tag { name: 'deporte' }) RETURN n
st := "MATCH (n:" + label + " { " + key + ": '" + value + "' }) RETURN n"
println(st)
cq0 := neoism.CypherQuery{
// Use backticks for long statements - Cypher is whitespace indifferent
Statement: st,
Parameters: neoism.Props{},
Result: &res,
}
db.Cypher(&cq0)
// println("largo")
// println(len(res))
// tagName, err := n1.Property("name")
// println(tagName)
// println(err)
var node *neoism.Node
if len(res) > 0 { // existe el tag
println("si")
node = &res[0].N
node.Db = db
} else {
println("no")
node, _ = db.CreateNode(props)
node.AddLabel(label)
}
return node
}