我有以下内容:
answers = Answer.objects.filter(id__in=[answer.id for answer in answer_set.answers.all()])
Run Code Online (Sandbox Code Playgroud)
然后:
for i in range(len(answers)):
# iterate through all existing QuestionAnswer objects
for existing_question_answer in existing_question_answers:
# if an answer is already associated, remove it from the
# list of answers to save
if answers[i].id == existing_question_answer.answer.id:
answers.remove(answers[i]) # doesn't work
existing_question_answers.remove(existing_question_answer)
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
'QuerySet' object has no attribute 'remove'
Run Code Online (Sandbox Code Playgroud)
我已经尝试了各种将QuerySet转换为标准集或列表.什么都行不通.
如何从QuerySet中删除一个项目,以便它不会从数据库中删除它,并且不会返回一个新的QuerySet(因为它在一个不起作用的循环中)?
我正在使用matjlotlib和django.我正在尝试创建条形图.
我跟着食谱,但我有一个灰色的矩形盒子.
现在我使用以下代码,并有一个标题和轴.
如何在图中添加条形图?目前轴内没有实际数据.
这是我的图表代码:
from matplotlib.backends.backend_agg import FigureCanvasAgg
from matplotlib.figure import Figure
import matplotlib.pyplot as plt
class Chart(object):
## Creates a bar chart of the given data
@staticmethod
def bar(data):
figure = Figure(figsize=(6,6))
ax = figure.add_axes([0.1, 0.1, 0.8, 0.8])
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
fracs = [15, 30, 45, 10]
explode=(0, 0.05, 0, 0)
plt.pie(fracs, explode=explode, labels=labels, autopct='%1.1f%%', shadow=True)
figure.suptitle('Raining Hogs and Dogs', fontsize=14)
canvas = FigureCanvasAgg(figure)
return canvas
Run Code Online (Sandbox Code Playgroud)
在我看来,我有:
canvas = Chart.bar(results)
# turn the …Run Code Online (Sandbox Code Playgroud)