Guest User

Untitled

a guest
Dec 19th, 2018
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.61 KB | None | 0 0
  1. I made a profile model by extending the AbstractUser and from this model i made a RegisterForm . I am saving the profile through frontend but when i save it gives me
  2.  
  3. AttributeError at /register/
  4.  
  5. 'Profile' object has no attribute 'cleaned_data'
  6.  
  7.  
  8. here is my code:
  9.  
  10. -----
  11.  
  12. models.py
  13.  
  14. from django.db import models
  15. from datetime import datetime
  16. from django.contrib.auth.models import AbstractUser
  17.  
  18.  
  19. class Profile(AbstractUser):
  20. is_seller = models.BooleanField('seller status', default=False)
  21. description = models.TextField(blank=True)
  22. register_date = models.DateTimeField(default=datetime.now, blank=True, null=True)
  23. photo = models.ImageField(upload_to='user', default='/home/shubham/Downloads/abc.png', null=True, blank=True)
  24.  
  25. ----------------------
  26. froms.py
  27.  
  28.  
  29. from .models import Profile
  30. from django import forms
  31.  
  32. class RegisterForm(forms.ModelForm):
  33. class Meta:
  34. model = Profile
  35. fields = ['username','email','first_name','last_name','password','is_seller','description', 'photo']
  36.  
  37. def save(self, commit=True):
  38. user = super(RegisterForm, self).save(commit=False)
  39. user.set_password(self.cleaned_data['password'])
  40. if commit:
  41. user.save()
  42. return user
  43. ---------------------------------
  44. views.py
  45.  
  46. from django.shortcuts import render
  47. from .froms import RegisterForm
  48. from django.contrib.auth import logout, login, authenticate
  49. # Create your views here.
  50.  
  51. def register(request):
  52. if request.method == 'POST':
  53. form = RegisterForm(request.POST)
  54. if form.is_valid():
  55. form = form.save(commit=False)
  56. username = form.cleaned_data.get('username')
  57. raw_password = form.cleaned_data.get('password')
  58. user = authenticate(username=username, password=raw_password)
  59. form.save()
  60. login(request, user)
  61. return render(request, 'form.html', {'form': form})
  62. else:
  63. form = RegisterForm()
  64. return render(request,'accounts/register.html', {'form':form})
  65.  
  66. .....................
  67. register.html
  68.  
  69. {% extends 'base.html' %}
  70. {% load crispy_forms_tags %}
  71. {% block content %}
  72. <div class="container">
  73. <div class="row">
  74. <div class="col-md-8 col-sm-10 col-12">
  75. <h2>Sign up as a {{ user_type }}</h2>
  76. <form method="post">
  77. {% csrf_token %}
  78. <input type="hidden" name="next" value="{{ next }}">
  79. {{ form|crispy }}
  80. <button type="submit" class="btn btn-success">Sign up</button>
  81. </form>
  82. </div>
  83. </div>
  84. </div>
  85. {% endblock %}
Add Comment
Please, Sign In to add comment