我的“事件”对象有一个“名称”字段。名称可能是错误的,因此用户可能会建议一个新名称。该名称被放入事件的“suggestedN”列表中。但是,我不希望该列表中的一个建议重复。我觉得这是一个直截了当的问题,但由于某种原因,我没有取得太大的成功。
这是我目前的看法:
@login_required
def suggestName(request):
name = request.POST['name'].strip()
event_id = request.POST['event_id']
try:
e = Event.objects.get(event_id = event_id)
except Event.DoesNotExist:
e = customEvent.objects.get(event_id = event_id)
if name in e.suggestedN.all():
pass
else:
(some code)
我的if name in e.suggestedN.all()
说法有错吗?
这是我的事件模型的简要视图:
class Event(models.Model):
def __unicode__(self):
return self.title
suggestedN = models.ManyToManyField('suggestedName', blank = 'TRUE', null = 'TRUE')
class suggestedName(models.Model):
def __unicode__(self):
return self.name
name = models.CharField(max_length=200, blank = 'TRUE', null = 'TRUE')
votes = models.IntegerField(default = 0)