0

質問があります。関連するルックアップのインスタンスの値から表形式のインラインを事前入力してもらいたいchange_form(manytomanyフィールドを使用)。したがって、クラスで検索kode_prodすると、そのインスタンスを取得して、すべてをtabularinline(クラス)に事前入力できます。change_formOrderFoo

これが私のモデルです

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はとのmanytomanyfield関係Productであるため、change_form関連するルックアップでそのインスタンスを取得できます。クラスFooは、の表形式のインラインになる仲介者ですchange_form。それで、私がそれをするためのいくつかの方法はありますか?私を助けてください、そしてあなたの親切な応答に感謝します:)。

4

2 に答える 2

0

OrderProductの間の関係が必要Fooですか?その後、django-documentationが役立つかもしれません

于 2012-06-12T16:15:00.433 に答える
0

おそらく、akode_prodが入力されたとき、ページが読み込まれたとき、または[別のFooを追加]リンクがクリックされたときに呼び出されるjQueryスクリプトを作成する必要があります。イベントのイベントリスナーを登録できるため、カスタムの送信ボタンも必要ありません'blur'

スクリプトは、次のようなdjangoビューによって応答される非同期XMLHttpRequestを送信します。

from django.core import serializers

def get_product(request, pk):
    return HttpResponse(serializers.serialize("xml", Product.objects.filter(pk=pk)))

次に、応答ハンドラーのjQueryスクリプトで、応答から必要なすべてのフィールドにデータを入力します。

次回は、質問をもっと具体的かつ明確にしてください。

于 2012-06-13T09:46:43.110 に答える