Администратор Flask Получить экземпляр модели в пользовательском шаблоне ModelView - PullRequest
0 голосов
/ 21 января 2019

В настоящее время я пытаюсь создать настраиваемый ModelView для detail_view, используя шаблон в Flask Admin.Однако я изо всех сил пытаюсь выяснить, как получить доступ к экземпляру модели, информацию о которой просматривает пользователь.

Это мой пользовательский ModelView:

class ShopModelView(MyModelView):
    can_view_details = True

    details_template = "custom_detail_view.html"

    @expose('/details/', methods=('GET', 'POST'))
    def details_view(self):
         self._template_args['all_transactions'] = #current_shop_object#.transactions.order_by(Transaction.timestamp.desc())

         return super(ShopModelView, self).details_view()

Просмотр в этом посте класс модели можно получить с помощью self.model, однако он возвращает класс, а не экземпляр конкретной модели, к которой осуществляется доступ.

Документация по Шаблоны и ModelView , кажется, не объясняет это.

Как я могу получить экземпляр конкретной модели, к которой осуществляется доступ?

1 Ответ

0 голосов
/ 21 января 2019

Оказывается, что текущий экземпляр модели может быть доступен через переменную model внутри файла шаблона jinja2. Поэтому вместо анализа переменной в качестве аргумента шаблона, как я пытался: self._template_args['all_transactions'] = #current_shop_object#.transactions.order_by(Transaction.timestamp.desc()),

{{model.transactions.all ()}} достигает результата, к которому я стремился.

...