Вам нужно сохранить корзину, прежде чем вы сможете добавлять элементы в поле многие ко многим.
c = Cart(item=name , size=size , extras=extras)
c.save()
c.user.add(request.user)
Вы также можете использовать set()
после сохранения.Обратите внимание, что при этом будут удалены все связанные пользователи, не указанные в наборе (хотя в данном случае это новый список, поэтому их нет).
c.user.set([request.user]
Наконец, вы уверены, что хотите многомного полей для этого?Это позволяет корзине принадлежать нескольким пользователям.Если это так, я бы назвал поле users
, а не user
.Если вы хотите только один user
за корзину, тогда я бы использовал ForeignKey
вместо этого.Ваше имя_связи members
также не имеет смысла.Это используется для привязки тележек к пользователю, поэтому я ожидаю, что вы будете использовать carts
.