Django 访问 relation 时,如何得知是谁访问的?

2022-10-26 09:59:43 +08:00
 coolair
比如有 User 和 Department
d1 = user.department
d2 = Department.objects.first()

如何知道 d1 是通过 user 访问的呢?
我想如果是通过 user.department 访问的,就给这个 department 加上一个属性 department.from=user ,怎么操作好?
1662 次点击
所在节点    Django
5 条回复
ray5173
2022-10-26 10:28:39 +08:00
框架不能帮你做这件事吧,只能自己的代码里写逻辑。
Vegetable
2022-10-26 10:50:59 +08:00
设计的不太对劲的样子

https://imgur.com/a/NNn5FjH

为了实现这个东西你需要改变框架层面的逻辑,容易改不干净,如果有人合作还增加理解成本
wingor2015
2022-10-26 16:29:40 +08:00
不太明白楼主为什么需要这样做
954
2022-11-01 01:28:11 +08:00
重写 User 的 Manager
HashV2
2022-12-01 11:13:44 +08:00
给 Department 写 @property form 和 @form.setter ,给 User 写一个 get_department 方法,然后在方法里面把 form set 上去

从用户获取部门统一用 user.get_department()

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/889905

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX