可能是一个新手问题,请耐心等待。如何从Django中的编辑窗体更新对象?
我有一个Django窗体编辑模型的某个实例。为了知道哪个对象正在被编辑,我有一个隐藏的字段,其中包含对象的id以及包含该id的URL。
第一个问题:有隐藏字段中的对象的id是否是正确的方式吗?
我的(可能是毫无根据的)关注它只是作为URL的一部分,因为有人可以打开一个对象ID的页面,将该表单提交给另一个对象,然后该对象将被覆盖。这就是我试图使用隐藏字段的原因。
将id存储在隐藏字段中的问题是,在验证表单时,Django会抱怨该对象没有唯一的id(显然)。
第二个问题:如果一个独特的领域是一种形式的一部分,一个人如何告诉Django忽略那个键已经存在,为了更新对象的事实?
你能告诉我你的形式? PS:是的,没有安全措施(权限),任何人都可以访问`/ edit/{{id}} /`并且是危险的。 – 2011-01-12 21:10:00
好吧,我确实有保护措施,例如检查对象是否属于登录用户 - 但即使如此,该用户(出于某种原因未知)可以编辑一个意外对象。 – 2011-01-12 21:11:08