2017-12-02 12 views
1

ページモデルで動的コンテンツブロックを作成するにはどうすればよいですか。たとえば、Googleマップを表すブロックが必要な場合を考えてみましょう。したがって、このStructBlockをズームレベル、lat、およびlngとして、ブロックをレンダリングするテンプレートに集約します。Wagtail StreamFieldの単一項目

アイデアはユーザーが実際に管理者にlat/lngを入力しなくても検索マップが提供するようにし、lat/lngをこのように動的に設定することを避けることです。

これを追加する唯一の方法はブロックをStreamFieldにラップして、ストリームフィールドパネルとしてtiを追加することです。

ただし、これで1つしか必要ない場合は、複数を追加できます。

答えて

1

StreamFieldsとStructBlocksを使用する場合、ユーザーが作成できるブロック数のうち、min_numおよび/またはmax_numを定義できます。 StructBlock docsを参照してください。

例:

class MyPage(Page): 
    map = StreamField(
     MapBlock(max_num=1, min_num=1, required=True) 
    ) 

この機能は1.12で追加されました。

関連する問題