2017-05-23 9 views
1

私は公式のドキュメンテーションとこれに関連する掲示板を検索しようとしましたが、関連するものは何も見つかりませんでした。Wagtailで新しいページを非表示にする

私のウェブサイトのページのテンプレートの一部は、一度のみ使用することができます。ホームページ。

新しいページを作成するときにユーザーがテンプレート/ページモデルを選択しないようにする方法はありますか?

答えて

2

YourPageModel.parent_page_typeshttp://docs.wagtail.io/en/v1.10.1/reference/pages/model_reference.html#wagtail.wagtailcore.models.Page.parent_page_typesを参照)を編集して、ページタイプを作成できる場所を制限することができます。同様にsubpage_typesの設定があるので、たとえばNewsIndexPageHomePageの直接の子としてのみ作成でき、NewsItemPageのインスタンスのみを含めることができます。これをユーザーのアクセス許可と組み合わせると、ツリー内の十分な場所にあるホームページやページタイプに十分なはずです。

特定のページタイプの1つだけが存在するように強制する必要がある場合は、クラスメソッドclean_parent_page_modelsをオーバーライドして、このクラスのインスタンスがすでに存在する場合は[]を返すことができます。このアプローチはハックですが、Wagtailの将来のバージョンでは壊れているかもしれません。

+0

恐ろしく、ありがとう!これはチュートリアルには含まれていません:/ - しかし、今私は誰もGoogleがこれを検索する人はこのポストを見つけると思います! – DDiran

+0

良い提案。プルの要求は常に歓迎されます。 https://github.com/wagtail/wagtail/blob/master/docs/getting_started/tutorial.rst – nimasmi

関連する問題