0
说我有下一个模型字段:设定值与的选择
STATUS_CHOICES = (
(0, 'open'),
(1, 'close'),
)
class Topic(models.Model):
user = models.ForeignKey(User)
text = models.TextField()
date = models.DateTimeField(auto_now_add=True)
status = models.SmallIntegerField(default=0, choices=STATUS_CHOICES)
status_date = models.DateTimeField(null=True, blank=True)
我尝试在URL发送状态(“打开”或“关闭”),并考虑从功能得到它。
@login_required
def topic_status(request, topic_id, status):
try:
topic = Topic.objects.get(id=topic_id, user=request.user)
except ObjectDoesNotExist:
return HttpResponseRedirect('/error/')
topic.status = status
topic.status_date = datetime.now()
topic.save()
return HttpResponseRedirect(reverse('mainpage'))
但是,当我设置topic.status价值,这是我从URL接受,我有这样的错误(topic.status =状态):
Exception Value: invalid literal for int() with base 10: 'close'
>>是否有任何理由你在URL中传递这些数据而不是说POST请求?我想通过链接设置这个参数 – tony 2011-04-24 22:54:19