2015-11-08 2 views
1

У меня есть лица EmergencyCase, которая имеет 2 встроенных структуры (1 массив и 1-структуру) Когда я пытаюсь сохранить EmergencyCase по телефону:вложенный Go App Engine объектов не сохраняется в облаке Datastore

datastore.Put(c, key, &ec) 

Everything за исключением поля Pos (тип Position). Об этой ошибке нет или записи в журнале. Он просто не сохраняется. Какие-либо предложения?

Вот мое 3 лица определение:

type Position struct{ 
    lon float32 
    lat float32 
} 
type EmergencyCase struct{ 
    // Autogenerated id, not stored in the database. 
    ID string `datastore:"-"` 
    CreatedAt time.Time 
    Closed bool 
    ClosedByUser bool `datastore:",noindex"` 
    AutoClosed bool `datastore:",noindex"` 
    Pos Position 
    Events []Event 
} 

type Event struct{ 
    // Autogenerated id, not stored in the datastore. 
    ID string `datastore:"-"` 
    CreatedAt time.Time 
    Name string `datastore:",noindex"` 
} 
+0

у вас не будет поля Pos в хранилище данных, но у вас будут поля lon/lat .. это тот случай? – MayK

+0

Нет, это было не так. – user3603632

ответ

5

Export имен полой Позиции по верхнему регистру первой буквы в названии. Хранилище данных stores exported fields only.

type Position struct{ 
    Lon float32 
    Lat float32 
} 
+0

Это была ошибка. спасибо – user3603632

1

Попробуйте использовать appengine.GeoPoint как оптимизированный/заселение вместо себя иного класса

+0

Спасибо за подсказку. – user3603632

Смежные вопросы