You have two choices 1. Change the URL mapping and pass the "id" in the url
url(r'^update_form/(?P<id>\d+)/$', 'eLeave.views.update_form'), (then the url is something like /update_form/15/) 2, Change the view so that it only accepts the "request" argument def update_form(request): in that case you can pass the id in the POST body of the request On Fri, Jan 9, 2015 at 12:50 AM, sum abiut <[email protected]> wrote: > hi James, > here is the url.py > > url(r'^update_form/$', 'eLeave.views.update_form'), > > > > On Fri, Jan 9, 2015 at 2:19 PM, James Schneider <[email protected]> > wrote: > >> Looks like you aren't sending enough arguments to your view from the URL >> dispatcher. What does your urls.py look like? >> >> -James >> On Jan 8, 2015 6:49 PM, "sum abiut" <[email protected]> wrote: >> >>> >>> Hi, >>> i am trying to update data in a row from an existing database but i keep >>> getting this error. >>> >>> update_form() takes exactly 2 arguments (1 given) >>> >>> can someone advise what i am missing here. >>> >>> >>> here are my code: >>> >>> view.py >>> >>> def update_form(request, id): >>> if request.method == 'POST': >>> a=newleave.objects.get(id=id) >>> form =leave_application(request.POST, instance=a) >>> if form.is_valid(): >>> form.save() >>> return HttpResponseRedirect('successful.html') >>> else: >>> a=newleave.objects.get(id=id) >>> form = leave_application(instance=a) >>> return render_to_response('update_form.html', {'form': >>> form},context_instance=RequestContext(request)) >>> >>> form.py >>> >>> class leave_application(forms.ModelForm): >>> class Meta: >>> model =newleave >>> fields =('First_Name', 'Last_Name', 'department', 'position', >>> 'leave_type', 'Specify_details', 'start_Date', 'end_date', >>> 'total_working_days', 'username') >>> >>> >>> >>> model.py >>> >>> class newleave(models.Model): >>> First_Name = models.CharField(max_length=45) >>> Last_Name =models.CharField(max_length=45) >>> department=models.CharField(max_length =45) >>> position=models.CharField(max_length =45) >>> leave_type =models.CharField(max_length=45) >>> Specify_details=models.TextField(default="") >>> start_Date =models.DateField(null=True) >>> end_date=models.DateField(null=True) >>> total_working_days=models.IntegerField(null=True) >>> authorization =models.CharField(max_length=45) >>> authorized_by=models.CharField(max_length=45, default ="") >>> remarks=models.TextField() >>> authorizaion_date =models.DateField(null=True) >>> Total_Leave_Left =models.IntegerField(default=20) >>> username =models.ForeignKey(User, default =1) >>> staff =models.ForeignKey(staff, default =1) >>> >>> def __unicode__(self): >>> return self.First_Name >>> >>> >>> >>> update_form.html >>> >>> <form action ="/update_form/" method="post">{%csrf_token%} >>> <table> >>> {{form.as_table}} >>> </table> >>> <br> >>> <input type="submit" name="submit" value="Save Record" > >>> >>> >>> </form> >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Django users" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at http://groups.google.com/group/django-users. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/django-users/CAPCf-y4bFqUymcHzSC97znJxitpZvb0XEEwZVhhRm_gkyD%3DFkg%40mail.gmail.com >>> <https://groups.google.com/d/msgid/django-users/CAPCf-y4bFqUymcHzSC97znJxitpZvb0XEEwZVhhRm_gkyD%3DFkg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Django users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/django-users. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/django-users/CA%2Be%2BciWYecZ%3DbVtQ_5geoiOG9ToHfUx1dNjfKVnA9MOxEO2OBg%40mail.gmail.com >> <https://groups.google.com/d/msgid/django-users/CA%2Be%2BciWYecZ%3DbVtQ_5geoiOG9ToHfUx1dNjfKVnA9MOxEO2OBg%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > > > > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/django-users. > To view this discussion on the web visit > https://groups.google.com/d/msgid/django-users/CAPCf-y4N9abkcMuUdc0hET7cACLRObKaa53hN8BntJ9vRkpZ2A%40mail.gmail.com > <https://groups.google.com/d/msgid/django-users/CAPCf-y4N9abkcMuUdc0hET7cACLRObKaa53hN8BntJ9vRkpZ2A%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CALn3ei3ryzPpeQcjpSUEEEscKe7ZggmHZD6Z-mL1W5SvrkmPqA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.

