問題タブ [django-widget]

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.

0 投票する
2 に答える
4386 参照

django - css クラスを forms.RadioSelect ウィジェットに適用する

ModelForm を使用していて、Django forms.RadioSelect ウィジェットに css クラスを設定しようとしています。

しかし、class='star' は html でレンダリングされません。

私も使ってみました:

これも機能しませんでした。forms.Textarea ウィジェットで同じことを試したところ、レンダリングされた css クラスを取得できました。

ここで何か間違ったことをしていますか、それとも RadioSelect が class 属性をサポートしていないだけですか (すべてのラジオ入力にクラス名を適用したい)?

0 投票する
1 に答える
1492 参照

django - カスタム ウィジェットから ModelChoiceField クエリセットにアクセスする

ModelChoiceField を持つフォームがあります。ModelChoiceFields を処理するためのカスタム ウィジェットを作成しました。ウィジェットは forms.TextInput を拡張します。

そしてフォーム上:

フォームを送信すると、必要な ModelChoiceField に提供されたクエリセットに対して、SelectWidget テキスト入力に入力された内容が検証されることを理解しています。

私の質問は:レンダー メソッドをオーバーライドしている SelectWidget で、ModelChoiceField に渡されたクエリセットにアクセスして、ウィジェットの「値」属性 (存在する場合) と照合するにはどうすればよいですか?

0 投票する
1 に答える
221 参照

python - 初期化後にCharField値を変更する

プログラムで入力するCharFieldを含むページ「A」があります。埋める値は、ページが表示されたとき(initの後)にのみ実行されるjavascriptコードによって開かれた別のページ「B」から取得されます。これは状況です:

  1. ページA__init__
  2. 初期化中に、ポート8080でリッスンしているスレッドを開始します
  3. ページAが初期化され、表示されました->テンプレート内のjavascriptが実行されます
  4. javascriptタグは、8080にデータを送信する新しいWebページを開きます
  5. スレッドはページBから送信されたデータを読み取り、CharFieldsに入力しようとします

これを行う方法はありますか?わからない...リフレッシュ方法..

それが不可能な場合...

  • フォームの前にjavascript関数を呼び出す方法が必要ですinitOR
  • 作成されたページのHTMLコードを変更する方法
0 投票する
2 に答える
1129 参照

django - フィールド feincms コンテンツ タイプの FilteredSelectMultiple ウィジェット

FeinCMS にカスタムメイドのコンテンツ タイプがあります。

「ファイル」フィールドは、.doc および .pdf ファイルのみを表示する多数のフィールドです。

今まではすべて正常に動作しています。このコンテンツ タイプを追加すると、すべてのファイルが表示されます。

しかし、自分のコンテンツ タイプで FilteredSelectMultiple ウィジェットを利用するにはどうすればよいでしょうか? お気に入り:

ここに画像の説明を入力

0 投票する
2 に答える
6975 参照

django - django admin 読み取り専用フィールドにウィジェットを表示する方法

フィールドが読み取り専用のときに、django admin のフィールドにウィジェットを表示したいと考えています。

admin.py

フォーム.py

ファイルが読み取り専用でない場合、widget OK と表示されます。しかし、読み取り専用として含めると、テキスト行が表示されます。(読み取り専用の場合、Django は私のフォームを使用しません)

読み取り専用フィールドでもフォームを使用するにはどうすればよいですか?

また

フィールドを読み取り専用に設定した場合に別のウィジェットを表示するにはどうすればよいですか?

0 投票する
1 に答える
2809 参照

django - Django-カスタムウィジェット-なぜDjangoは私が「attrs」を持っていないと思うのですか?

編集:Django1.3を使用する

私は自分自身を教育するためにカスタムウィジェットを作成しましたが、ページがフェッチされたときにDjangoが次のように言う問題を乗り越えることができません。

'attrs'引数を使用したくないので、デフォルトでNoneに設定しました(空の辞書、たとえば{}も試しました)。そのため、Djangoが文句を言う理由について混乱しています。

widgets.py

admin.py

model.py


ダニエルの助けを借りた後の作業バージョン

ダニエルが彼の答えで説明したことを取り入れた後のwidgets.pyの動作バージョンを次に示します。次に、他に1つまたは2つの小さな変更を加えました(ここで説明する問題には関連付けられていませんでしたが、正常に動作しなくなりました)。このバージョンは、期待どおりに機能するようになりました。

0 投票する
0 に答える
75 参照

django - ウィジェットを使用して Django のフォームに属性を追加するにはどうすればよいですか?

フォーム フィールドに表示するプレースホルダーを取得しようとしていますが、フォーム フィールドに問題があります。何かご意見は?次のクラスがあります。

私はウィジェットを間違って、または間違った場所で使用していると推測しています。私が間違っていることを説明するためのウィジェットドキュメントの適切な部分が見つかりません。

0 投票する
1 に答える
2460 参照

python - Python/Django Forms: 動的変数の作成とフォーム フィールドへのアクセス

ウィジェットが1つしかないdjangoフォームクラスがあります。このウィジェットに次のように名前を付けたい<select name="custom_name"></select>のですが、Django は変数の名前を取り、ウィジェットに名前として付けます。例えば:

したがって、上記のコードは次の名前のウィジェットを作成します。

<select name="here_is_the_name_of_the_widget">...</select>

フォームのプロトタイプを作成する必要があるため、初期化時にこの名前を作成する必要があります。この時点まで、このフォームは問題なく動作しますが、事前に与えられた標準の名前を使用します。

だから、私が望むものを達成する方法(ハック)を考えましたが、期待どおりに機能していません。ウィジェットに付けたい名前が「countries」の場合、次のエラーが発生します。

そして、そのエラーを生成するコードは次のとおりです。

それを達成する方法、またはより良い方法はありますか?

ありがとう!

これが解決策です...

@Daniel Rosemanに感謝

0 投票する
0 に答える
388 参照

django - admin-form のカスタム django フィールド

Django 管理者バックエンドのフォーム フィールドを作成しようとしています。データベースでは、CharField フィールドである必要があり、長さ 24*7 の "0" と "1" の値が含まれます。管理パネルでは、それぞれ 24 個のチェックボックスを持つ 7 つのフィールドとして表示したいと考えています。コード:

model.py:

fields.py

widgets.py

syncdb を実行しようとすると、次のエラーが発生します。

0 投票する
0 に答える
161 参照

django - django のウィジェットの js メディア フィールドに属性を追加する

ほとんどのJavaScriptでrequirejsを使用してAMDロードを使用していますが、djangoのウィジェットでそれらを使用するのに問題があります。

Django のドキュメントには、メディアは次の方法で埋め込む必要があると記載されています。

これにより、次の html が作成されます。

しかし、これが欲しい場合はどうすればよいですか?

data-main属性を挿入するように django に指示するにはどうすればよいですか?

回答ありがとうございます。