Tôi đang cố đặt giá trị mặc định trường dựa trên lựa chọn trường khác là ngoại tuyến. Về cơ bản, đây là những lớp học:Giá trị trường đặt Django tự động dựa trên các trường khác
class Product(models.Model):
description = models.CharField('Description', max_length=200)
price = models.FloatField('Price')
class Sell(models.Model):
product = models.ForeignKey(Product)
price = models.FloatField('Price')
Mỗi "sản phẩm" có giá mặc định (hoặc giá đề xuất), vì vậy khi sử dụng, trong trang quản trị, muốn thêm một Bán mới và anh/cô ấy chọn một sản phẩm, tôi cần phải sao chép động từ Product.price sang Sell.price giá được đề xuất. Tôi không thể sử dụng phương pháp "lưu" vì người dùng có thể thay đổi tại thời điểm đó.
Có cần sử dụng JavaScript một cách rõ ràng không? hoặc là có một cách thanh lịch ở Django để làm điều đó?
Và một cách khác là khởi tạo trường 'price' trong phương thức' clean() 'của mô hình. Giống như ghi đè 'save()' nhưng là sạch hơn do không cần phải gọi 'super()' và nó là một móc khung được thiết kế chỉ dành cho điều này :) –