問題タブ [wagtail-streamfield]

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 投票する
0 に答える
383 参照

wagtail - 「StreamField」でサブクラス化された「StructBlock」の編集インターフェースをカスタマイズする方法

sitesフレームワークを利用し、それぞれのホームページとして単一のページを持つセキレイプロジェクトがありますsite。これらのホームページには (必然的に) 子ページは必要ありません。それらのコンテンツは、さまざまな streamfield から構築されていStructBlockます。

これらStructBlockの のそれぞれには、個別のフィールド セットがありますが、共通のフィールドもあります (例: show_in_navigation)。

show_in_navigation BooleanBlockfor eachを繰り返さないようにするために、共通フィールドを使用してStructBlockを作成し、これを特定のブロック用にサブクラス化しました。BaseStructBlock


それは機能します-show_in_navigation継承するすべてのブロックで取得しますBaseStructBlock-しかし、これらのフィールドの編集インターフェイスをカスタマイズしたいと思います:

  • 現時点ではBaseStructBlock、サブクラス化されたブロックのフィールドの上にすべてのフィールドが表示されます -特定のフィールドの下に表示したい- 解決済み、更新を参照してくださいBaseStructBlock
  • これらのクールなパネルのカスタマイズをすべて使用してedit_handlers、すべての共通フィールドを作成できれば幸いcollapsibleです。

これは可能ですか?すべてのヒントは大歓迎です。

PS: ドキュメント セクション の StructBlockのカスタム編集インターフェイスに気付きましたが、これが私のニーズをどのように解決できるかわかりません...

PPS: このプロジェクト:

  • ジャンゴ (2.0.1)
  • セキレイ (2.0b1)
0 投票する
2 に答える
1188 参照

django-templates - wagtail streamfield ブロックの依存関係をテンプレートに挿入する正しい方法は何ですか?

テンプレート継承システムを使用して、ページに挿入extra_cssしたり、ページに挿入したりextra_jsします。

base.html :

page.html :

これはうまく機能するため、追加の css/js が実際に所属する場所に挿入されます。

streamfieldブロック テンプレートの 1 つにカスタム css/js が必要な場所で使用する必要がある場合、問題が発生します。この場合、カスタム リソースはブロックと共に挿入されますが、base.htmlの指定された場所には挿入されません。

たとえば、上記の例extra_jspage.htmlが代わりにブロック テンプレートに追加されている場合、ブロックと共に挿入されているが、コア JSの後に意図したとおりではないため、存在しないselect2と不平を言うでしょう。ライブラリ。jquery

2 回ロードjqueryすると、他の問題が発生します: https://stackoverflow.com/a/25782679/2146346

他のオプションは、すべてのブロックの依存関係をページにロードすることですが、すべてのブロックがページでstreamfield使用されるとは限らないため、冗長なリソースでページがいっぱいになります。

他のオプションはありますか?