2011-12-30 17 views
8

tôi nhận được lỗi:Django mô hình sai sót "Lỗi Loại: 'xxx' là một cuộc tranh cãi từ khóa không hợp lệ cho chức năng này

TypeError: 'person' is an invalid keyword argument for this function 

mô hình của tôi là:

class Investment(models.Model): 
company = models.ManyToManyField("Company", related_name ="Investments_company") 
financial_org = models.ManyToManyField("Financial_org", related_name ="Investments_financial_org") 
person = models.ManyToManyField("Person", related_name ="Investments_person") 

thử nghiệm của tôi (cung cấp cho các lỗi):

investment1 = Investment(company = [], financial_org = financial1, person = []) 

Trả lời

27
  1. instanciate mo của bạn del mà không cần nhiều đến nhiều, investment1 = Investment()

  2. Lưu mô hình của bạn, investment1.save()

  3. Thêm nhiều nhiều, có several ways to do it như hoặc investment1.person.create(name='foo')

Bạn có thể không sử dụng mối quan hệ ManyToMany cho đến khi một mô hình được lưu, đây là b ecause một hàng trong một bảng quan hệ ManyToMany cần pk của các mô hình ở hai bên của các mối quan hệ.

+0

Bạn đã cứu mạng tôi. Cảm ơn bạn. –

+0

Làm cách nào để tiết kiệm một cuộc sống? cảm ơn những lời tốt đẹp mặc dù xD – jpic

+0

Bạn bè, Cảm ơn bạn vì giải pháp này, đã phục vụ tôi rất nhiều. –

Các vấn đề liên quan