我有问题要问。我希望让我的change_form
从相关查找的intances值中预填充tabularinline(使用manytomany字段)。因此,当我在课程kode_prod
中的change_form
中搜索Order
时,我可以获取其实例并在我的表格线(类Foo
)中预填充所有内容。
这是我的模特
class Product(models.Model):
product_name= models.CharField(max_length=50)
price = models.DecimalField(max_digits=10, decimal_places=2, default=Decimal('0.00'))
tax_per_item = models.DecimalField(max_digits=10, null=True, blank=True, decimal_places=2, default=Decimal('0.00'))
discount_per_item = models.DecimalField(max_digits=10, null=True, blank=True, decimal_places=2, default=Decimal('0.00'))
class Order(models.Model):
produks = models.ManyToManyField(Product, verbose_name=u"Kode Produk")
no_customer = models.ForeignKey(Customer, null=True, blank=True, related_name='%(class)s_kode_cust')
class Foo(models.Model):
product = models.ForeignKey(Product, editable=False)
pemesanan = models.ForeignKey(Order)
quantity = models.IntegerField()
price = models.IntegerField()
discount = models.IntegerField()
tax = models.IntegerField()
类Order
与Product
的关系很多,因此在change_form
中,我可以使用相关的查找来获取其实例。班级Foo
是来自change_form
的tabularinline的中介。那么,有什么方法让我这样做吗?请帮助我,谢谢你的好意回复:)。
答案 0 :(得分:0)
您需要Order
和Product
到Foo
之间的关系吗?
然后django-documentation可能会帮助你
答案 1 :(得分:0)
您应该编写一个jQuery脚本,在输入kode_prod
,页面加载或单击“添加另一个Foo”链接时调用。您甚至不需要自定义提交按钮,因为您可以为'blur'
事件注册事件监听器。
你的脚本发送一个异步XMLHttpRequest,它由django视图回答:
from django.core import serializers
def get_product(request, pk):
return HttpResponse(serializers.serialize("xml", Product.objects.filter(pk=pk)))
然后在响应处理程序的jQuery脚本中,从响应中填充所有需要的字段。
下次请在您的问题中更具体,更明确。