【发布时间】:2016-01-07 13:58:00
【问题描述】:
以前我让用户从下拉列表中选择颜色,但我宁愿为他们选择一种,所以我使用以下代码来确定哪些颜色是有效的选择,然后随机选择一种。我试图让它预先填充到表单中,但我收到了一个名称错误。疯狂地抓挠我的头,因为我已经通过简单地将choice 输入模板来测试此代码。所以我知道代码在这种情况下可以正常运行。我不能做我在下面做过的事情吗?
我在启动服务器时遇到的错误是 Name Error: name 'cur_colors' [at the list comprehension line] is not defined 但它显然是...
class LimitedJobForm(forms.ModelForm):
jobnum = forms.CharField(label='Job Number')
#get colorchoice
cur_jobs = Job.objects.filter(enddate__gte=(datetime.date.today()-timedelta(days=7)))
all_colors = Color.objects.all()
cur_colors = []
for i in cur_jobs:
cur_colors.append(i.color)
aval_colors = [x for x in all_colors if x not in cur_colors]
choice = random.choice(aval_colors)
color = forms.CharField(initial=choice)
【问题讨论】: