問題タブ [django-multiwidget]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - Django の MultiWidget を使用するにはどうすればよいですか?
この機能に関しては、ドキュメントが少し不足しています。
他のウィジェットのリストを含む「ウィジェット」プロパティを作成する必要があることはわかりますが、その後、小さなシャーロック ホームズが表示されます。
MultiWidget ウィジェットの使い方を教えてください。
compression - django multiwidget サブクラスが decompress() を呼び出さない
IP アドレス/ドメイン名のエントリに MultiValueField を実装しようとしています。データを入力するために期待どおりに機能します。私の問題は、特定のデータにバインドされたフォームを表示したい場合、IP アドレス/ドメイン名フィールドが空のままであることです。他のすべてのフィールドには、目的のデータが入力されます。通常の CharField を使用すると、期待どおりのデータが得られます。しかし、それは私のカスタム フィールドでは機能しません。カスタム MultiWidget が解凍メソッドを呼び出さないという事実まで追跡しました。
これが私のフィールドです:
そして、ここに私のウィジェットがあります:
全体は(より大きなコンテキストで)次のように呼び出されます
ご覧のとおり、compress メソッドに print ステートメントを入れましたが、そのステートメントは表示されません。また、compress の名前を foobar のような名前に変更すると、(MultiWidget の django コードによると) NotImplementedError が発生すると予想されますが、そうではありません。助言がありますか?
ubuntuサーバー10.04でpython 2.6.5、django 1.1を使用しています。
python - Djangoサブクラス化マルチウィジェット - カスタムマルチウィジェットを使用して投稿時に日付を再構築する
私のジャンゴの本は大学に戻ってきたので、これを解決するのに苦労しています。
私はdjango.forms.widgets.MultiWidget
次のようにサブクラス化しました:
これにより、次のような気の利いた日付選択フィールドが表示されます。
私の質問は本当にとても簡単です。上記のフォームをその処理方法に送信すると(次のようなプロセスを使用します:
これは失敗します。Django は、私のマルチウィジェットを取得して、それを に設定されている基礎となるフィールド タイプに変換する方法を認識していないためmodels.py
ですDateField()
。
ここで、django ソースの MultiWidget に関するコメントから、次の役立つヒントが得られます。
おそらく、このクラスを MultiValueField と一緒に使用したいと思うでしょう。
しかし、問題は - 私はおそらくそうではありません。DateField()
とても便利で、複製しても意味がないので、手元に置いておきたいと思います。yyyy-mm-dd
次に、データベースに挿入するために、これらの複数のフィールドを単一の有効な日付文字列 ( ) に変換する必要があります。
私の質問は次のとおりです。
どのように?これを達成するための最良の方法は何ですか?
django - モデルフォームとマルチウィジェットの操作方法
このすべての初心者!フロントエンドで (xxx)xxx-xxxx として表示される電話フィールドの表示に取り組んでいます。以下は私のコードです。私の質問は 1. すべてのフィールドが必須です。何らかの理由で、電話が期待どおりに動作していません。空白のままにしても問題はありません。2. このウィジェットの機能をテストするにはどうすればよいですか
モデルでは、空白と null は真ではありません。どんな入力でも大歓迎です.Thanks
django - オプションのインラインの MultiValueField
インラインで使用される MultiValueField を設定しました。MultiValueField を空白のままにすると、まだ入力されていると思われるように見えます。その結果、フォームに関する限り、これらのインラインは空ではない (したがって検証される) ため、フォーム検証エラーが発生し続けます。
だから私は疑問に思っていると思います:検証エラーの発生を避けることができるように、明示的に空白にできるように MultiValueField を設定するためのトリックはありますか?
問題のコードは次のとおりです。
django - MultiWidget と MultiValueField を使用してフォーム モデルを保存する
MultiWidgets と MultiValueFields をサブクラス化してフォームを作成する方法を理解しようとしています。シンプルな Address モデルと関連するフォームがあります。
私のビューでこのフォームを使用する方法がわかりません。私はやろうとしています:
その結果、Django から次のエラーが返されます。
値のリストを入力します。
また、request.POST.items() を印刷しようとすると、アドレス応答が 3 つのデータで区切られて返されます。
ここでかなり迷ってしまいました。住所データを 1 行で取得する必要があります。フォームを保存するだけでそれを達成するにはどうすればよいですか?
誰かが私に明確な説明をしてくれれば、本当に感謝しています。
django - DjangoのカスタムMultiValueWidgetを使用してMultiValueFieldを検証します
「おおよその」日付を設定できるフィールドとウィジェットが必要です。アイデアは、次のうち1つだけにすることです。
- 正確な日付
- 一年そして多分一ヶ月
- 初年度と最終年度
圧縮された有効な値は次のとおりです。
- 「1988/08/07、、、、」
- "、1988 、、、"
- "、1988,08 ,,"
- ",,, 1997,1999"
問題は、上記の3つのオプションの1つだけを持つようにフィールドを検証できないことです。フィールド定義で、validateメソッドとcleanメソッドを作成しようとしましたが、検証されていません。フィールドとフィールド間のリンクがウィジェットは正しくありません。私は何が欠けていますか?
これを実現するために、ウィジェットを作成しました。
そしてフォームフィールド:
django - Djangoで2つのモデルフィールドを1つのフォームフィールドとして表すにはどうすればよいですか?
Djangoで次の状況を適切に処理する方法がわからないようです。
モデルに日付範囲があり、2つの別々のフィールドとして保存しdate_start
ますdate_end
。
このモデルのフォームでは、これを1つのフィールドとして、1つのラベルで表現したいと思います。
現在のように、MultiWidgetを拡張してSelectDateRangeWidget
:を作成しました。
次に、2つのDate
ウィジェットが組み込まれます。これを使用したいのですが、2つの別々のモデルフィールドにクリーンアップし、初期データをフォームフィールドにロードする機能も保持します。initial
フォームの関数で、毎回これら2つのフィールドの値を手動で設定し、手動でこれら2つのモデルフィールドにクリーンアップする唯一の方法です__init__
。または、これを行うためのよりクリーンな(いわば)方法があります。 ?
django - django - MultiValueField / MultiWidget のフィールドに属性を追加する
全て、
MultiValueField と MultiValueWidget を機能させることができました。しかし、「選択肢」を除けば、MultiValueField を構成するサブフィールドに属性 (「ラベル」や「初期」など) を追加できないようです。
これが私の(簡略化された)コードです:
MyModel の「myField」フィールドは、MyForm でほぼ正しくレンダリングされます。2 つの TextInput と 1 つの Select の 3 つのウィジェットが表示されます。後者は、適切な選択肢に制限されています。ただし、前者の 2 つは、ラベルまたは初期値が設定されていません。
私が間違っていることについて何か提案はありますか?
ありがとう。
django - django multivaluefield&multiwidget-圧縮および/または解凍が機能しない
全て、
ほぼ機能するMultiValueFieldを持つフォームがあります。これは、choicefieldとcharfieldを使用します(ウィジェットに対応するSelectとTextInputを使用)::
圧縮機能が機能しているようです。期待どおりに2つの文字列のリストを返します。ただし、解凍の「value」引数は常にNoneです。案の定、データベースを直接チェックすると、myField列は常にnullに設定されます。圧縮と解凍の間に何が起こっているのか、何か考えはありますか?compressの値が実際に保存されないのはなぜですか?
ありがとう。