“NoneType”对象在Charti中不可读取

2024-05-31 23:49:19 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,我试图用我的数据创建一个数据透视图,但是我总是发现“NoneType”对象不可编辑。我用的是查特。我的错误是“terms”:['tot\u ft']}]),这是在数据透视图部分

这是我的代码: 以下是我导入的以下内容:

from django.shortcuts import render, get_list_or_404, get_object_or_404, redirect
from django.contrib.auth.decorators import login_required
from basketball.models import Stats, Player, League, Game, Team
from django.contrib.auth import get_user
from django.db.models import Sum
from django.http import HttpResponse, HttpResponseRedirect
from django.core.mail import send_mail, BadHeaderError
from chartit import PivotDataPool, PivotChart

在视图.py在

^{pr2}$

在模型.py在

class Stats(models.Model):
    player = models.ForeignKey(Player)
    game = models.ForeignKey(Game)
    freeThrowsMade = models.PositiveIntegerField(verbose_name='FTm', default = 0)
    freeThrowsAttempted = models.PositiveIntegerField(verbose_name='FTa', default = 0)
    twoPointsMade = models.PositiveIntegerField(verbose_name='2Pm', default = 0)
    twoPointsAttempted = models.PositiveIntegerField(verbose_name='2Pa', default = 0)
    threePointsMade = models.PositiveIntegerField(verbose_name='3Pm', default = 0)
    threePointsAttempted = models.PositiveIntegerField(verbose_name='3Pa', default = 0)
    blocks = models.PositiveIntegerField(default = 0)
    steals = models.PositiveIntegerField(default = 0)
    assists = models.PositiveIntegerField(default = 0)
    fouls= models.PositiveIntegerField(default = 0)

Tags: or数据djangonamefromimportauthdefault
2条回答

我也遇到了同样的问题,我知道问题出在哪里的方法是将数据发送到一个模板中。我把图表上的数据放在我的基本.html. 每次我打开一个不是接收数据的模板时,我都会遇到这个错误。确保你没有那样做。在

我也犯了同样的错误。在查特的源代码中搜索了一下之后,我找到了解决方案。在

除了data_sourceseries_optionschart_options之外,还可以给PivotChart构造函数一个可选参数。当chart_选项未给定时,chartit默认将None分配给它,导致出现错误。 这实际上是chartit中的一个bug。在

要绕过此问题,您应该以chart_options的形式发送一个空字典:

pivcht = PivotChart(
            datasource = playerPivotData,
            series_options = [
                {'options': {
                    'type': 'column',
                    'stacking': True},
                'terms': ['tot_ft']}],
            chart_options = {})

相关问题 更多 >