So che questo problema può essere duplicato in this one. Ma non ha ottenuto una risposta soddisfatta fino ad ora. E voglio davvero attirare l'attenzione per ottenere una soluzione il prima possibile. Quindi ti prego di non chiudere questo problema se non si ha la soluzione e rispose in quella precedente :-)mgo convert bson.objectId in stringa (hex) nel modello html
mi limiterò a descrivere il problema per convincere:
ho una struttura di dati che sono stati memorizzati in MongoDB , come noto, il _id
di MongoDB è un tipo bson.ObjectId
, ho potuto recuperare che, con un po 'come questo:
type Data struct {
Id bson.ObjectId `bson:"_id,omitempty"`
Content string `bson:"content"`
}
Poi ho avuto una fetta di Data
trovando con particolare condizione di query, e l'uso che la fetta in http/template
per il rendering per la vista front-end. Al fine di manipolare ogni elemento nella fetta, voglio utilizzare il campo Id
, ma quando si utilizza quello con:
{{range $key, $value := .DataSlice}}
<td>{{$value.Id}}</td>
{{end}}
che solo dà una sorta di stringa come ObjectIdHex("550146d1b51bc1c208d1924d")
invece di 550146d1b51bc1c208d1924d
che è bello e facile da usare .
Nel duplicate issue. L'op ha detto che ha trovato un modo per risolvere questo "aggiungendo un Id_String
" alla struttura dati originale. Ma davvero non so come farlo? Questo significa assegnarlo dopo il recupero? Poiché utilizzo una sezione per archiviare i dati recuperati, i dati in una sezione non possono essere modificati facilmente. Sarà più complesso farlo rispetto al lavoro nel front-end usando jquery. Ma fare che appena mi deprimono con la mia amata Go :-(.
è così c'è un modo migliore per farlo?
possibile duplicato di [bson.ObjectId in un modello] (http://stackoverflow.com/questions/28262392/bson-objectid-in-a-template) –