0

我有一个数据模型类,其中使用 Objectify 注释@Id标记字符串字段“customerUniqueId” 。因此,我使用了在创建要放入数据存储的新对象时在代码中设置的字符串键字段(不是自动编号长)。

@Id private String customerUniqueId;

在使用 Datastore Viewer 查看这些对象时,我可以单击Create选项卡来创建一个新对象。但是,“customerUniqueId”字段不作为输入字段提供。我只在我的数据模型中显示标记为@Indexed的字段。

这是预期的行为还是我应该能够在数据存储查看器创建功能中为 @Id 字段输入一个值?

我是否错误地使用了@Id,我必须将该字段命名为“id”还是“name”?

也许如果我将@Id 字段也标记为@Indexed 但这应该是不必要的吧?@Id 字段应始终按定义进行索引。

也许它与我留空的“创建”表单中的“命名空间”文本框有关?

有人有这个问题并且知道解决方案吗?谢谢!

4

1 回答 1

1

@Id 字段在数据存储中不作为属性存在。它是实体key的一部分。我认为数据存储查看器不允许您使用 String 键创建实体;它总是使用自动生成的数字。也许向 Google 提出针对数据存储查看器的问题?

于 2012-10-10T01:32:13.533 回答