我想在django的编辑项目视图中发送项目id变量。任何人都可以告诉我,我该怎么做?
答案 0 :(得分:1)
加密的一个方面是,如果您加密ID以传递它,您还必须先解密它才能查找。
可能对您有用的替代方法是为每个Project对象添加一个唯一的*安全哈希值,该对象在save()上创建到您选择的配方中:例如
import hashlib
class Foo(models.Model):
...attributes here, eg name, ...
obj_hash = models.CharField(max_length=40, blank=True, null=False)
def save(self):
if not self.obj_hash:
self.obj_hash = hashlib.sha1(string of attributes vals here).hexdigest()
super(Foo, self).save()
然后在你的urlConf和视图中有一些东西使用或查找Foo的obj_hash而不是它的id。
(*是的,我知道技术上并不保证它是唯一的,但哈希冲突不应该是一个问题。如果你真的想要,可以在保存之前检查它是否存在。)
答案 1 :(得分:0)
但是,如果您需要加密数据,请使用安全套接字层(SSL)