Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何更改get结果的ID。获取、过滤和保存_Python_Django_Django Models - Fatal编程技术网

Python 如何更改get结果的ID。获取、过滤和保存

Python 如何更改get结果的ID。获取、过滤和保存,python,django,django-models,Python,Django,Django Models,我需要制作一个匿名模型。 我的模型是 class Laddu(models.Model): owner = models.ForeignKey(User) url = models.TextField() 我需要匿名,这样才能 Laddu.save(owner=<owner with pk = 1>, url = "google.com") Laddu.save(所有者=,url=“google.com”) 实际上会节省 n = anonimusAlgo(1)

我需要制作一个匿名模型。 我的模型是

class Laddu(models.Model):
    owner = models.ForeignKey(User)
    url = models.TextField()
我需要匿名,这样才能

Laddu.save(owner=<owner with pk = 1>, url = "google.com")
Laddu.save(所有者=,url=“google.com”)
实际上会节省

n = anonimusAlgo(1)
Laddu.save(owner=<owner with pk = n>, url = "google.com")
n=anonimusAlgo(1)
save(owner=,url=“google.com”)
get和filter也是如此

有没有更好的方法让模型匿名


所以,最终的结果是,即使有人入侵数据库,他也无法获得正确的数据。

如果我理解正确,您正在寻找一种方法,将您的Laddu模型链接到用户模型,这样,如果有人在两个表上都得到了手,他/她将无法知道哪个Laddu对象与哪个用户对象相关

如果是这种情况,请不要选择字段:
所有者=型号。外键(用户)

您需要有一个CharField,它将是用户PK的“加密”版本,类似于

owner_pk = models.CharField()
然后,每次您想要访问所需的用户时:

user = User.objects.get(pk=decrypt(laddu_obj.owner_pk))
请参阅此答案,了解如何为整数PKs生成随机键:

我不确定我是否理解您想做什么或为什么要做。所以您想把您的Laddu保存给所有者,对吗?通过某种算法生成n,如果n是所有者表中的主键,则将Laddu保存给该所有者,对吗?