从另一个文件调用函数以在模板中使用

我有一个函数可以在这个文件中创建一个百分比


status.py


class Status:

    read_books = Books.objects.filter(read="True")

    all_books = Books.objects.all()


    def percentage(self):

        asdf = get_percentage(len(self.read_books),len(self.all_books))

        return asdf

我试图能够在我的模板中使用这个函数来通过在我的模板中使用这样的东西来显示这个百分比


{{ status.percentage }}

这可能吗?我是否必须将逻辑纳入我的观点才能做到这一点?


也许我可以把这个函数放在我的视图类中并从那里调用它?


编辑:


views.py


class BooksView(TemplateView):

    template_name = 'KPI/Books.html'

    read_books = Books.objects.filter(read="True")

    all_books = Books.objects.all()



    def get_context_data(self, **kwargs):

        context = super(BooksView, self).get_context_data(**kwargs)

        context['all_books'] = self.all_books

        context['read_books'] = self.read_books    

        return context


慕哥9229398
浏览 120回答 2
2回答

九州编程

如果您使用基于类的视图,您只需在上下文中添加您的状态对象。为此,请覆盖该get_context_data方法:class myView(View):    #...    def get_context_data(self, **kwargs):        context = super().get_context_data(**kwargs)        myStatus = Status()        context['status'] = myStatus        return context
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python