Django registration, primary key issue -


i have issue authentication process. create signin process giving user ability create new account using mail, account inactive until edits providing first name, last name , password. gave try go url edit profile receive error related pk ..

error:

    environment:   request method: post request url: http://127.0.0.1:8000/registration/users/2/edit/  django version: 1.11.3 python version: 3.6.2 installed applications: ['django.contrib.admin',  'django.contrib.auth',  'django.contrib.contenttypes',  'django.contrib.sessions',  'django.contrib.messages',  'django.contrib.staticfiles',  'registration'] installed middleware: ['django.middleware.security.securitymiddleware',  'django.contrib.sessions.middleware.sessionmiddleware',  'django.middleware.common.commonmiddleware',  'django.middleware.csrf.csrfviewmiddleware',  'django.contrib.auth.middleware.authenticationmiddleware',  'django.contrib.messages.middleware.messagemiddleware',  'django.middleware.clickjacking.xframeoptionsmiddleware']    traceback:  file "/users/raphaelbendenoun/anaconda/envs/mydjangoenv/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner   41.             response = get_response(request)  file "/users/raphaelbendenoun/anaconda/envs/mydjangoenv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response   187.                 response = self.process_exception_by_middleware(e, request)  file "/users/raphaelbendenoun/anaconda/envs/mydjangoenv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response   185.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)  file "/users/raphaelbendenoun/documents/testregis/registration/views.py" in update_profile   41.         user = get_object_or_440(user, pk=pk) #find user instance id in db  exception type: nameerror @ /registration/users/2/edit/ exception value: name 'get_object_or_440' not defined 'pk' 

urls:

from django.conf.urls import url, include registration import views  app_name = 'registration' urlpatterns = [     url(r'^register/$', views.register, name='register'),     url(r'^users/(?p<pk>\d+)/edit/$', views.update_profile, name="edit-user-profile"), ] 

form.py:

from django import forms django.contrib.auth.models import user .models import myuser django.contrib.auth import get_user_model  user = get_user_model()  class form(forms.modelform):     password = forms.charfield(widget= forms.passwordinput())      class meta():         model = user         fields= ('first_name','last_name','email','password','company')  class inactiveform(forms.modelform):      class meta():         model = user         fields= ('email',)   class updateprofile(forms.modelform):      email = forms.emailfield(required=true)     first_name = forms.charfield(required=true)     last_name = forms.charfield(required=true)     password = forms.charfield(widget= forms.passwordinput())      class meta:         model = user         fields = ('email', 'first_name', 'last_name','password')      def clean_email(self):         email = self.cleaned_data.get('email')          if email , user.objects.filter(email=email).count():             raise forms.validationerror('this email address in use. please supply different email address.')         return email      def save(self, commit=true):         user = super(registrationform, self).save(commit=false)         user.email = self.cleaned_data['email']          if commit:             user.save()          return user 

views.py

from django.shortcuts import render django.views import generic django.views.generic import templateview django.views.generic.edit import createview, updateview, deleteview .forms import inviteform invitations.models import invitation .models import project django.core.urlresolvers import reverse  # create views here.  class homepage(templateview):     template_name= 'index.html'  class candidateindex(templateview):     template_name= 'candidateindex.html'  class hrindex(templateview):     template_name= 'hrindex.html'  class projectdetailview(generic.detailview):     model = project     template_name = 'project_details.html'  class projectcreate(createview):     model = project     fields = ['project_name']     template_name = 'project_form.html'   def create_invite(request):     if request.method == "post":         invite_form = inviteform(data=request.post)         if invite_form.is_valid():             email1 = invite_form.cleaned_data['email1']             email2 = invite_form.cleaned_data['email2']             email3 = invite_form.cleaned_data['email3']             email4 = invite_form.cleaned_data['email4']             email5 = invite_form.cleaned_data['email5']             in invite_form.cleaned_data:                 invite = invitation.create(i)                 invite.send_invitation(request)             print("the mail went")             #return reverse('website:projectdetails', kwargs = {'pk' : self.pk} )         else:             print("your form not valid")     else:         invite_form = inviteform()     return render(request, 'team_invite.html', {'invite_form': invite_form}) 

project_detail.html:

{% extends 'base.html' %} {% block body %} <div class="container">   <div class="jumbotron">     <h2>welcome project {{project.project_name}} detail page</h2>   </div>   <div class="invite-team">       <a href="{% url 'website:addteam' %}">gogo</a>   </div> </div>     {% endblock%} 

you pass pk variable urls.py view method, view method did not expect have change update_profile method signature so:

update_profile(request, pk)     .... 

your method has more erros inside one:

form = updateprofile(request.post, instance=request.user) 

it probaly should be:

user = get_user_model() user = get_object_or_404(user, pk=pk) #find user instance id in db form = updateprofile(request.post, instance=user) 

Comments

Popular posts from this blog

Sort a complex associative array in PHP -

vb.net - How to ignore if a cell is empty nothing -

recursion - Can every recursive algorithm be improved with dynamic programming? -