Go 및 GoRestful을 사용하여 Google App Engine Datastore에 저장된 일부 엔티티에 대해 RESTFUL 프런트 엔드를 프로그래밍합니다.이동 Lang 전체 구조체에 대한 태그 설정
데이터는 JSON/XML로 변환되고 각 형식의 스타일을 제어하는 태그를 사용하여 사용자에게 표시됩니다. 올바른 스타일을 사용하여 출력되도록 구조체 자체의 이름에 태그를 적용하는 방법은 무엇입니까?
내 구조체의 예는 다음과 같습니다
type Shallow struct {
Key string `datastore:"-" json:"key" xml:"key"`
LastModified time.Time `json:"last_modified" xml:"last-modified"`
Version int `json:"version" xml:"version"`
Status int `json:"status" xml:"status"`
Link Link `datastore:"-" json:"link" xml:"link"`
Name string `json:"name" xml:"name"`
}
type ProbabilityEntry struct {
ItemId int64 `datastore:"ItemId" json:"item_id" xml:"item-id"`
Probability float32 `datastore:"Probability" json:"probability" xml:"probability"`
Quantity int16 `datastore:"Quantity" json:"quantity" xml:"quantity"`
}
type LootTable struct {
Shallow
AllowPreload bool `json:"allow_preload" xml:"allow-preload"`
Probabilities []ProbabilityEntry `json:"probabilities" xml:"probabilities"`
}
LootTable의 구조체는 'loot_table'또는 '전리품 테이블'보다는 'LootTable'로 자신을 표현해야 JSON/XML에 방출
.
원하지 않는 출력을 생성하는 LootTable을 마샬링하는 데 사용하는 코드를 표시 할 수 있습니까? 'json.Marshal (myLootTable) '에 대한 간단한 호출은 json dict 이외의 것으로 "자신을 표현"하지 않습니다. –
코드는 내 응용 프로그램에 불투명하며 GoRestful 또는 다른 내장 라이브러리에 의해 제공됩니다. 아래의 Dommage의 대답은 어떤 경우에도 내 요구를 훌륭하게 처리 할 것입니다. –