2012-12-07 58 views
5

我有两个结构(NewDailyPrediction)与DailyPrediction结构New结构的实体之一:如何在结构内部存储结构?

type New struct { 
    Id string 
    DailyPrediction 
} 

type DailyPrediction struct { 
    Prediction string 
} 

我无法读取(或)写的结构数据存储新。如果有人能帮助我,这将是有益的。

+0

数据存储? App Engine数据存储区可能?如果是这样可以帮助标记google-app-engine或gae-datastore这个问题。 – Sonia

+0

我删除了应用程序引擎标记,因为问题似乎与应用程序引擎无关。也许我误解了这个问题? –

回答

1

从你的问题中,我不清楚你到底在做什么,以及它以什么方式失败。但是,当您通过不给它一个名称而将DailyPrediction结构嵌入到新结构中时,它仍然需要初始化。你可以看到如何做到这一点这里的细节: http://golang.org/doc/effective_go.html#embedding

例如,为了初始化新的结构,你可以使用这样一行:

n := New{"foo", DailyPrediction{"bar"}} 

莫非是少了什么?

+0

非常感谢......我在发布的问题中不清楚。实际上我创建了这个结构来创建一个Json并将其保存在数据存储中。 Json结构应该像这样{“Id”:“20122403”,“Dailypred”:{“Prediction”:“ABCD”}}。阅读Json时遇到的问题是它会抛出一个错误 - “SAVE datastore:不支持的结构字段类型:pcg_new.DailyPrediction”..请帮助我做到这一点 – Raj

+0

我只是做了以下几点:var jsonBlob = [] byte('{“Id “:”meemaw“,”Prediction“:”Moonpie“}'),并且成功解组到我构造的结构,其中DailyPrediction结构包含字符串Prediction。那是你在找什么? – Derek

+0

没关系,我看到问题不是让json读取它,而是appEngine来存储它。这听起来像@alphazero的答案更相关,这不支持。 – Derek

1

Not supported由appengine。

+0

它由应用程序引擎支持,因为您可以自己做,图书馆不会照顾它。你需要实现界面并将事情弄平。 – Ali