我在Google App Engine上使用django-nonrel
(http://www.allbuttonspressed.com/projects/djangoappengine)。我有我的模型等设置,一切都很好。我有一个问题。我希望能够访问实体的密钥。给定一个名为“Review”的模型,我会Review.objects.get(pk = 1).key()
抛出错误(AttributeError
)。
有什么方法可以获得给定实体的密钥,以便我可以使用它而不是被迫使用pk / id?我想将密钥用作唯一标识符的唯一标识符。秘密URL(如果有人有更好的建议来实现这一目标,我会全力以赴)。
答案 0 :(得分:0)
您可以通过调用object.key()。id()来获取id,它返回python内部的唯一键。在模板中,您只需调用object.key.id即可。然后,您可以使用get_by_id来获取对象
答案 1 :(得分:0)
您可以从元数据中获取django-nonrel上的主键:
review._meta.pk
或关键名称: 键= GETATTR(综述,review._meta.pk.column)
显然,'id'字段会根据您在开发服务器还是生产服务器上的不同而变化。这样可行!
参考: http://www.b-list.org/weblog/2007/nov/04/working-models/