Ich fragte mich, ob es eine Möglichkeit gibt, ein Stuct-Feld zu haben, das nicht an mgo gebunden wird, auch wenn es nicht leer ist.Mgo Feld weglassen, auch wenn nicht leer
Die einzige Möglichkeit, die ich gefunden habe, ist, das Feld in Kleinbuchstaben zu schreiben, was den Zugang erschwert. Gibt es eine andere Art und Weise?
Dies ist ein Beispiel, und mein Ziel hier ist, die SSN nicht in die Datenbank zu committen, aber immer noch in Großbuchstaben.
package main
import (
"fmt"
"crypto/sha1"
"encoding/base64"
"labix.org/v2/mgo"
)
type Person struct{
Name string
SSN string
HashedSSN string
}
func main() {
bob := Person{"Bob", "fake_ssn", ""}
hasher := sha1.New()
hasher.Write([]byte(bob.SSN))
sha := base64.URLEncoding.EncodeToString(hasher.Sum(nil))
bob.HashedSSN = sha
mgoSession, err := mgo.Dial("localhost:27017")
if err != nil {
fmt.Println("mongo_config#initMongoSessions : Could not dial to mgoSession", err)
} else {
mgoSession.DB("test").C("person").Insert(bob)
}
}
Danke,
Süß, Sie sind sehr hilfreich Gustavo – Gary