Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django表单为关键字参数获取了多个值_Python_Django_Django Forms_Django Views_Django Urls - Fatal编程技术网

Python django表单为关键字参数获取了多个值

Python django表单为关键字参数获取了多个值,python,django,django-forms,django-views,django-urls,Python,Django,Django Forms,Django Views,Django Urls,我有一个简单的模型如下: RATING_CHOICES = zip(range(1, 6), range(1, 6)) class Rating(models.Model): value = models.IntegerField(choices=RATING_CHOICES) additional_note = models.TextField(null=True, blank=True) from_user = models.ForeignKey(User, rel

我有一个简单的模型如下:

RATING_CHOICES = zip(range(1, 6), range(1, 6))
class Rating(models.Model):

    value = models.IntegerField(choices=RATING_CHOICES)
    additional_note = models.TextField(null=True, blank=True)
    from_user = models.ForeignKey(User, related_name='from_user')
    to_user = models.ForeignKey(User, related_name='to_user')
    shared_object = models.ForeignKey(ObjectDetail, null=True, blank=True)
    dtobject = models.DateTimeField(auto_now_add=True)
class RatingForm(ModelForm):

     class Meta:
          model = Rating
          exclude = ('from_user', 'dtobject',
                     'shared_object')
根据上述模型,我生成了一个模型表单,格式为my forms.py,如下所示:

RATING_CHOICES = zip(range(1, 6), range(1, 6))
class Rating(models.Model):

    value = models.IntegerField(choices=RATING_CHOICES)
    additional_note = models.TextField(null=True, blank=True)
    from_user = models.ForeignKey(User, related_name='from_user')
    to_user = models.ForeignKey(User, related_name='to_user')
    shared_object = models.ForeignKey(ObjectDetail, null=True, blank=True)
    dtobject = models.DateTimeField(auto_now_add=True)
class RatingForm(ModelForm):

     class Meta:
          model = Rating
          exclude = ('from_user', 'dtobject',
                     'shared_object')
在我的URL中,我尝试以下操作:

url(r'^rate/(?P<form_type>[\w]+)/(?P<oid>\d+)/(?P<oslug>[\w-]+)/$', 'rating_form', name='rating_form'),                     
def rating_form(form_type = None, oid = None, oslug=None):

    print form_type
    form = RatingForm(data=request.POST or None)

    if request.POST and form.is_valid():
           form.save()
        return HttpResponseRedirect("/")
    else:
        return render(request, "share.html", {'form' : form })
这样做会导致以下错误:

rating\u form()为关键字参数“form\u type”获取了多个值。

其他详情:

Request Method: GET
Request URL:    http://127.0.0.1:8000/rate/lending/3/random-stuff/
Django Version: 1.4.1
Exception Type: TypeError
Exception Value:    
rating_form() got multiple values for keyword argument 'form_type'
Exception Location: /Library/Python/2.7/site-packages/django/contrib/auth/decorators.py in _wrapped_view, line 20
Python Executable:  /usr/bin/python

我做错了什么?

你观点的第一个论点应该是
请求

为此杀了我,已经花了3个小时苦苦挣扎到底出了什么问题!这么简单,但我相信这为一千人挽救了这一天。我一次又一次地来回答这个问题。谢谢。(self,request,pk=None)在django rest框架中使用自定义操作。谢谢