请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师请问怎么在save_models方法中获取正要保存的对象中多对多字段

老师,当我在xadmin中保存一个对象时,应该怎样在save_models方法中获取正要保存的对象中的多对多字段的对象呢。我试了以下正常的正要保存的对象.多对多字段名.all(),结果什么都没有。
(这个的用途是我的模型中有个charfield可以存一段文本,我想在保存对象时候,把对象模型中的多对多字段或者外键字段转成文本存在这个charfield中,以便以后万一这个模型关联的多对多字段改了名字,导致模型里的名字变化,通过在对象第一次保存的时候把多对多字段转成文本存在charfield中,以后一旦关联的这个多对多字段对象自身的名字发生变化,那么我这个模型中的charfield中还能保存当时的名称)

正在回答

2回答

bobby 2020-11-02 11:00:05

https://img1.sycdn.imooc.com//szimg/5f9f7620098736af11690739.jpg 你可以看看这个文件的这个代码 这个代码是用来保存manytomany的逻辑的 你可以看看这里的源码

0 回复 有任何疑惑可以回复我~
  • 提问者 长颈鹿111 #1
    这里看了,没看懂,还请老师赐教,应该怎么改,折磨两天了没调通。谢谢?
    回复 有任何疑惑可以回复我~ 2020-11-03 09:12:16
  • 提问者 长颈鹿111 #2
    manytomany关联的是一个设备名称,但是在实际使用过程中设备名称会更名,更名后以前关联这个设备的字段再打开后就不是原来的名字,而是更名后的名字了,我看了savem2m那个方法但是不知道怎么在savemodel方法中改,先谢谢老师了
    回复 有任何疑惑可以回复我~ 2020-11-04 08:13:52
  • bobby 回复 提问者 长颈鹿111 #3
    你留下qq 我加你看看
    回复 有任何疑惑可以回复我~ 2020-11-04 17:35:05
提问者 长颈鹿111 2020-11-03 09:09:55

这里看了,应该怎么改呢?我水平不够,没研究通。第一次保存的时候虽然模型的id有了,但是模型中所包含的manytomany字段查找时候返回空,不知道该怎么写。我需要在用户选完manytomany字段点击保存时就将用户的选择提取成文字,防止以后manytomany字段中的模型改名记录的信息发生变化

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信