Tôi có hai mô hình có mối quan hệ nhiều với một bảng 'qua' theo một cách nào đó?Tôi có thể thêm người quản lý vào mối quan hệ nhiều người không?
class Bike(models.Model):
nickname = models.CharField(max_length=40)
users = models.ManyToManyField(User, through='bike.BikeUser')
Lớp BikeUser
class BikeUser(models.Model):
bike = models.ForeignKey(Bike)
user = models.ForeignKey(User)
comment = models.CharField(max_length=140)
Tôi muốn thêm chức năng cho lớp Bike để làm việc với người sử dụng, đó là một cách thực hành tốt nhất để làm điều này. Tôi muốn tránh thêm quá nhiều phương thức cho lớp xe đạp và thay vì có một số loại người quản lý để làm việc thông qua
Cái gì như:
bike.bikeusers_set.commonMethod()
hoặc
bike.bikeusers.commonMethod()
Điều gì sẽ là tốt nhất cách để thực hiện điều này?
Cảm ơn bạn, đã hoạt động như một sự quyến rũ! Howerver, nếu tôi gọi người quản lý từ một chiếc xe đạp đã được instanciated bike.bikeuser_set.commonMethod() Làm cách nào để truy cập "xe đạp" từ bên trong commonMethod? (đây có phải là câu hỏi mới không?) – Joelbitar
Tôi nghĩ bạn sẽ phải thêm nó làm tham số chức năng: def commonMethod (tự, xe đạp) và sử dụng nó như sau: bike.bikeuser_set.commonMethod (xe đạp) – OmerGertel
Thats what I 'v đã làm, tôi nghĩ rằng có một cách tốt hơn, cảm ơn bạn rất nhiều! – Joelbitar