1

Django を使用して単一のフォームから複数のオブジェクトを追加するにはどうすればよいですか?

例: 販売された製品の登録を格納する販売フォームがあるとします。

次の形式を想像してください。

datetime: [_____________]
customer: [_____________]
product: [______________] ---> How should I implement adding multiple products
                               in the same form?
cost: [_________________] 

Save (button)

ヒント: これは単なる質問です。方法がわからないので、何かアイデアがあれば教えてください。

ありがとう

4

1 に答える 1

2

1 つの方法は、Formsetを使用することです。たとえば、Django admin で複数の関連オブジェクトをインラインで表示するために見たことのあるフォームセット。

別の方法には、AJAX、サンプルソリューションが含まれる可能性があります。

  • 「追加された製品」は、<ul>注文に追加された製品の単純なリストです
  • 「製品の検索」は、ユーザーが製品名または SKU を入力するプレーン テキスト フィールドです。
  • ユーザー入力は AJAX 経由でサーバーに送信され、関連する製品のリストが返されます。
  • これらの製品の提案はユーザーに表示されます
  • ユーザーが製品名をクリックすると、特定の製品を注文に関連付けるために別の AJAX 要求が行われます
  • リクエストが完了すると、「追加された製品」リストが AJAX を介して更新され、新しく追加された製品がそこに表示されます

これには、最初に一時的な注文を作成し、後で個別のリクエストを介して製品を添付する必要があります。フォームセットにはこの要件はありませんが、個人的にはあまり使用していません。少し面倒に見えます。

于 2013-04-21T05:35:40.987 に答える