【问题标题】:How to get an page instance from a block instance on a admin edit page?如何从管理员编辑页面上的块实例中获取页面实例?
【发布时间】:2016-02-15 14:03:12
【问题描述】:

我有一个自定义的 wagtail PageChooserBlock。

class SelectThroughBlock(wblocks.PageChooserBlock):
    @cached_property
    def field(self):
        from django import forms
        return forms.ModelChoiceField(
            queryset=self.target_model.objects.all(), widget=self.widget, required=self.required,
            help_text=self.help_text)

    @cached_property
    def widget(self):
        from django.forms.widgets import Select
        return Select()

如何在 wagtail admin 中获取编辑页面的实例?

【问题讨论】:

    标签: wagtail


    【解决方案1】:

    Page 的管理员编辑 url 可以通过实例的 id 访问。

    my_page = Page.objects.get(pk=2)
    reverse("wagtailadmin_pages:edit",args=(my_page.pk,))
    

    或在模板中:

    {% url 'wagtailadmin_pages:edit' page.id %}
    

    因此,您可以在任何可以访问 Page 实例的地方调用编辑页面的反向 url。

    【讨论】:

      猜你喜欢
      • 2013-02-13
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      • 2019-06-13
      • 2017-11-15
      • 2019-01-13
      • 1970-01-01
      • 2012-05-12
      相关资源
      最近更新 更多