为 ManyToMany 字段赋值
Assigning Value(s) to ManyToMany Field
我正在尝试为订单 class 中的 ManyToMany 字段赋值。
def assign_order(request, user_id):
order_id = request.session.get('order_id')
#picking this session from a previous fxn allowing me to call the order.id
order = get_object_or_404(Order, id=order_id)
employee = Employee.objects.filter(user_id=user_id)
#Employee is a profile model leveraging an AbstractUser
order.deliverer.set(employee)
#using .set() for direct assignment of user(Employee) onto ManyToMany field on "Order"
order.status = 'deliverer_assigned'
order.save()
此架构的问题是 fxn 将始终覆盖我的 ManyToMany 字段,而不是将新用户(员工配置文件)附加到它上面。
1.有没有更好的方法来完成我需要的?即在管理员外部更新 ManyToMany 字段?
2。在这种情况下如何防止覆盖问题?
正在使用
order.deliverer.add(employee)
而不是 .set
应该可以。
有关详细信息,请参阅 django docs。
我正在尝试为订单 class 中的 ManyToMany 字段赋值。
def assign_order(request, user_id):
order_id = request.session.get('order_id')
#picking this session from a previous fxn allowing me to call the order.id
order = get_object_or_404(Order, id=order_id)
employee = Employee.objects.filter(user_id=user_id)
#Employee is a profile model leveraging an AbstractUser
order.deliverer.set(employee)
#using .set() for direct assignment of user(Employee) onto ManyToMany field on "Order"
order.status = 'deliverer_assigned'
order.save()
此架构的问题是 fxn 将始终覆盖我的 ManyToMany 字段,而不是将新用户(员工配置文件)附加到它上面。
1.有没有更好的方法来完成我需要的?即在管理员外部更新 ManyToMany 字段?
2。在这种情况下如何防止覆盖问题?
正在使用
order.deliverer.add(employee)
而不是 .set
应该可以。
有关详细信息,请参阅 django docs。