Hi Anthony, I want to personally say thank you for your videos. I wish I could hit the subscribe button twice. If you ever got patreon. I will make sure to join.
Thank you so much dude. Your video was the end of a 14 hour slogfest through docs and other videos that didn't work out. Thank you so much. Keep up the good work.
Omg, I was looking for the same thing from long time and i was checking your django playlist and noticed that you uploaded this one week ago. Thanks a lot for this tutorial.
Very helpful video .. I couldn't search the solution for showing the one to one model fields info anywhere .. but u got my back.. Thanks Sir .. for your amazing work .. keep uploading new content to help us with our work
We're currently building a django project in the coding bootcamp I'm in, and I was looking to extend the user in just this way! Found a lot of other resources and documentation that tried to explain how exactly I should implement the OneToOne field, but you explained everything super concisely! Really awesome tutorial! Instant sub :D
This was awesome. Quick question, what if i wanted to add the other information related to the user like the location and age after they have registered and logged in to the app.
Thank you for the video! This is what I want to make. But, I have an error when I summit the registration page. The error is UNIQUE constraint failed: userprofile_profile.user_id. Is there any way to solve this error? Thank you
It's good solution, but there is problem if you need follow sequence fields. For example you need place default django's field then your custom field then default field again. Do you know solution of descirbed problem?
thank you so much for this video, is there source code of this video in your Github? because I couldn't find it, it would be really good if you share the source code in your git
I was trying to build a project .. i did extend default user model.. i was successful but once i login user from form.. and open admin panel it wil logout the superuser from there.. what i want is the user i created doesnot affect the super user. Plz help me..
In some articles, when extending user model using one-to-one field, I saw they also implemented post_save signals. You didn't seem to implement that. Is it really needed? what's the purpose of it, if may I know please?
Hi Prit, because of certain requirement I had to extend the User model using AbstractBaseClass, and not using one-to-one field. Btw this video demonstrated on how to extend user model using one-to-one only with whole code too, didn't you find it helpful? No issues. There are mainly four ways to extend Django User model. 1. Proxy Model 2. One-to-One field 3. AbstractUser 4. AbstractBaseUser There is an old but amazing article which helped me a lot to grasp this overall topic, which I'm mentioning it below. simpleisbetterthancomplex.com/tutorial/2016/07/22/how-to-extend-django-user-model.html If you want a code then here I found a repo for you, which is just a basic django app demonstrating how to extend user model using one-to-one field. github.com/ankurbelbase/django-Extend-User-Model Hope it helps.
Hey i have done exact same as u did: But i have this problem every time i follow it. form error: {'password_mismatch': 'The two password fields didn’t match.'}
@@techyguys4394 Hi. I tried using flags. There was 2 types of users in my project. It works, redirects different pages. But honestly, its not efficient enough I think. You can find the code here 👉 github.com/tahademirer/Hospital-Appointment-System
hi there i have question: i have three types of users with different form fields. should i need to create three profiles ? like i have sellers and clients and adminstrations . and how to verify user while login whether its seller or client? here is my user profiles.: class SellerProfile(models.Model): user = models.OneToOneField( User, blank=True, null=True, on_delete=models.SET_DEFAULT, default=None) # password = models.CharField(max_length=50, default=1) mobileNo = models.CharField(max_length=40, default=None) cnic = models.CharField(max_length=30, default=None) city = models.CharField(max_length=30, default=None) address = models.CharField(max_length=30, default=None) state = models.CharField(max_length=30, default=None) shop_name = models.CharField(max_length=30, default=None) def __str__(self): return self.user.username class ClientProfile(models.Model): user = models.OneToOneField(User, models.SET_DEFAULT, default=None) def __str__(self): return self.user.username here is my registration view: def registration(request): if request.method == 'POST': form = UserForm(request.POST) sellerFrom = SellerFrom(request.POST) if form.is_valid() and sellerFrom.is_valid(): user = form.save() seller = sellerFrom.save() seller.user = user seller.save() username = form.cleaned_data.get('username') password = form.cleaned_data.get('password1') # user = authentication(username=username, password=password) # login(request, user) messages.success(request, 'account was created for' + username) form = UserForm() sellerFrom = SellerFrom() return redirect('login') else: form = UserForm() sellerFrom = SellerFrom() context = {'form': form, 'sellerForm': sellerFrom} return render(request, 'gui/signup.html', context) and here is my login view : def login(request): if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') user = authenticate(request, username=username, password=password) if user is not None: auth_login(request, user) return redirect('home') else: messages.info(request, 'Username or password is incorrect') context = {} return render(request, 'gui/login.html', context)
What if we want multiple user to register...for example in a job portal webapp candidate and partner signup and login or in school management webapp student and teacher signup login how we do that.. could you please help..I am struggling in this for two week..😭😭😭 please Help
A have a question,so i made oneToOneField,with 3 new field(gold,ruby,power) how can i put default value without admin panel editing (i want get 3 defaul value for my 3 new field immediately after registration) (i speak london xD)
How to make it so the default user field is the currently authenticated user, Becoz my extended model will be lectures conducted by teacher.... Which he must add whenever he needs it
Hi, Thank you for this tutorial. When i submit the form i am getting this error. Could you please help. I have {% csrf_token %} in my page Forbidden (403) CSRF verification failed. Request aborted. Help Reason given for failure: CSRF token missing or incorrect. In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django's CSRF mechanism has not been used correctly. For POST forms, you need to ensure: Your browser is accepting cookies. The view function passes a request to the template's render method. In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL. If you are not using CsrfViewMiddleware, then you must use csrf_protect on any views that use the csrf_token template tag, as well as those that accept the POST data. The form has a valid CSRF token. After logging in in another browser tab or hitting the back button after a login, you may need to reload the page with the form, because the token is rotated after a login. You're seeing the help section of this page because you have DEBUG = True in your Django settings file. Change that to False, and only the initial error message will be displayed. You can customize this page using the CSRF_FAILURE_VIEW setting.
There is no any video before this. This video itself demonstrates the complete tutorial. From 1:41 to 2:05. Here he extended the 'User' model which comes built-in with Django. This 'User' model comes with the necessary fields required for authentication like email, username, and password and also all the validation stuff is handled by django, which is the beauty of django!
Join my free course on working with the database and models in Django: prettyprinted.com/djangodatabase
Hi Anthony, I want to personally say thank you for your videos. I wish I could hit the subscribe button twice. If you ever got patreon. I will make sure to join.
Thank you, I have been struggling with this for 6 hours for my final Milestone Project.
+1
I've been struggling for 2 days trying to add a user_img. It works but when using the usercreationform it doesn't give me the error
Thank you so much dude. Your video was the end of a 14 hour slogfest through docs and other videos that didn't work out. Thank you so much. Keep up the good work.
I'm glad i could help! Thanks for watching.
Omg, I was looking for the same thing from long time and i was checking your django playlist and noticed that you uploaded this one week ago.
Thanks a lot for this tutorial.
You're welcome! Thanks for watching.
Very helpful video .. I couldn't search the solution for showing the one to one model fields info anywhere .. but u got my back.. Thanks Sir .. for your amazing work .. keep uploading new content to help us with our work
I'm glad my video could help you. Thanks for watching.
We're currently building a django project in the coding bootcamp I'm in, and I was looking to extend the user in just this way! Found a lot of other resources and documentation that tried to explain how exactly I should implement the OneToOne field, but you explained everything super concisely! Really awesome tutorial! Instant sub :D
I'm glad the video helped! Thanks for watching.
started watching this... ended up calling into work:) Awesome video!
Finally I have found the complete tutorial. Thanks man.
Great. Thank you. I am busy with python on these days and you are one of the best channel.
OMG! You saved my smol life. I got f****ed for straight 3 days and couldn't extend the default user model. THANK YOU SO MUCH!
Thank you for your clear and straightforward explanation. It would've been a whole day for me to understand the documentation xD
i was looking for a good tutorial which does what its says and finally I found peace!!!
,thank you!!
What I was exactly looking for.
You are good man...
Keep it up and thanks.
You just earned a subscriber.
Finally I found what i'm looking for for 2 days , thank u so much 💜
Thanks man it solved my problem
I was too looking for extending fields beside existing user model offered by django.
This was clear and to the point. Just perfect
This is EXACTLY what I was looking for. Thank you!
This was awesome. Quick question, what if i wanted to add the other information related to the user like the location and age after they have registered and logged in to the app.
You deserve million subscribers
Great! I was looking for it from long time.
Thank you very much!
Thanks! This was really helpful!
I must buy that course. Am sure it will fast track my Django learning process.
Hope to see you in the course!
Thank you for the video! This is what I want to make. But, I have an error when I summit the registration page. The error is UNIQUE constraint failed: userprofile_profile.user_id. Is there any way to solve this error? Thank you
how did you solve it?
This helped me allot, I am really thankful ♥️🙏
I'm glad it did. Thanks for watching!
Finally found the correct tutorial which i was looking for. Thanks man 👍
Great Content !! Thanks for helping
Wow this is great, thanks! This is similar to signals right?
Thank you so much dude, from Russia:)
How did you get user.user_profile.location at 10:45 ? Where did "user_profile" come from?
Hi! How we can get an access to this custom fields if we need edit userprofile? Thanks
Thanks you bro well done
finally after 2 hours, thank u
You're welcome!
It's good solution, but there is problem if you need follow sequence fields.
For example you need place default django's field then your custom field then default field again.
Do you know solution of descirbed problem?
Any help on authenticating users login request using email & username? Not just username.
thank you so much for this video, is there source code of this video in your Github? because I couldn't find it, it would be really good if you share the source code in your git
just awesome. Thank you so much boss.
Can we have done this with our custom form instead of
extending UserCreationForm???
Thank you man😁 finally I got it🙏
thanks brother!
Thank you so so very much!
How to edit profile page by user ?
Thanks !
u r truly amazing
I was trying to build a project .. i did extend default user model.. i was successful but once i login user from form.. and open admin panel it wil logout the superuser from there.. what i want is the user i created doesnot affect the super user. Plz help me..
Well just cuious can it be done using one form
In some articles, when extending user model using one-to-one field, I saw they also implemented post_save signals. You didn't seem to implement that. Is it really needed? what's the purpose of it, if may I know please?
Hi Prit, because of certain requirement I had to extend the User model using AbstractBaseClass, and not using one-to-one field.
Btw this video demonstrated on how to extend user model using one-to-one only with whole code too, didn't you find it helpful? No issues.
There are mainly four ways to extend Django User model.
1. Proxy Model
2. One-to-One field
3. AbstractUser
4. AbstractBaseUser
There is an old but amazing article which helped me a lot to grasp this overall topic, which I'm mentioning it below.
simpleisbetterthancomplex.com/tutorial/2016/07/22/how-to-extend-django-user-model.html
If you want a code then here I found a repo for you, which is just a basic django app demonstrating how to extend user model using one-to-one field.
github.com/ankurbelbase/django-Extend-User-Model
Hope it helps.
thanks man
Hi Anthony, Could you please make video on 'Web Notifications' using Flask.? Thank you in advance
I'll see what I can do. Thanks for the idea.
correct me if i'm wrong, isn't it discouraged to user "User". I think i read somewhere to use "settings.AUTH_USER_MODEL" instead?
Yes, if you plan on extending the model further or want more flexibility, you can use that instead, but the idea here will be similar.
How to add a field of a model to another model.please you tell me the code for it
19/6/2022 perrfect course
Excellent...Thanks
You're welcome! Thanks for watching.
How to create serializers and views for this. Please tell me i need this
Hey i have done exact same as u did:
But i have this problem every time i follow it.
form error: {'password_mismatch': 'The two password fields didn’t match.'}
hi thanks for your nice work .
I have problem to save data on db, my register page is always refreshing when i click on submit button
Something should happen when the submit button is clicked. You may have to redirect to some other page after the registration is complete.
@@prettyprinted Now it work, the problem was the name of the ''ExtendedUserCreationForm'' who i changed before
Genius
how can I implement multiple user types and redirect them different pages on login? I can't find it please help :(:(:((:
same i looking for
Looking for same did you find out
@@techyguys4394 Hi. I tried using flags. There was 2 types of users in my project. It works, redirects different pages. But honestly, its not efficient enough I think. You can find the code here 👉 github.com/tahademirer/Hospital-Appointment-System
def __str__(self):
return self.user.username
is not working for me. What can I do?
what if I want first_name & last_name fields also in new model ?
hi there i have question:
i have three types of users with different form fields. should i need to create three profiles ? like i have sellers and clients and adminstrations . and how to verify user while login whether its seller or client?
here is my user profiles.:
class SellerProfile(models.Model):
user = models.OneToOneField(
User, blank=True, null=True, on_delete=models.SET_DEFAULT, default=None)
# password = models.CharField(max_length=50, default=1)
mobileNo = models.CharField(max_length=40, default=None)
cnic = models.CharField(max_length=30, default=None)
city = models.CharField(max_length=30, default=None)
address = models.CharField(max_length=30, default=None)
state = models.CharField(max_length=30, default=None)
shop_name = models.CharField(max_length=30, default=None)
def __str__(self):
return self.user.username
class ClientProfile(models.Model):
user = models.OneToOneField(User, models.SET_DEFAULT, default=None)
def __str__(self):
return self.user.username
here is my registration view:
def registration(request):
if request.method == 'POST':
form = UserForm(request.POST)
sellerFrom = SellerFrom(request.POST)
if form.is_valid() and sellerFrom.is_valid():
user = form.save()
seller = sellerFrom.save()
seller.user = user
seller.save()
username = form.cleaned_data.get('username')
password = form.cleaned_data.get('password1')
# user = authentication(username=username, password=password)
# login(request, user)
messages.success(request, 'account was created for' + username)
form = UserForm()
sellerFrom = SellerFrom()
return redirect('login')
else:
form = UserForm()
sellerFrom = SellerFrom()
context = {'form': form, 'sellerForm': sellerFrom}
return render(request, 'gui/signup.html', context)
and here is my login view :
def login(request):
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(request, username=username, password=password)
if user is not None:
auth_login(request, user)
return redirect('home')
else:
messages.info(request, 'Username or password is incorrect')
context = {}
return render(request, 'gui/login.html', context)
What if we want multiple user to register...for example in a job portal webapp candidate and partner signup and login or in school management webapp student and teacher signup login
how we do that.. could you please help..I am struggling in this for two week..😭😭😭 please Help
How can I redirect to different pages based on user_type(customer,employee)?
same question . did you found any solution?
super! thanks!
You're welcome!
nice tutorial. can you share the codes for this video?
join() argument must be str, bytes, or os.PathLike object, not 'dict'
how to solve this
A have a question,so i made oneToOneField,with 3 new field(gold,ruby,power) how can i put default value without admin panel editing (i want get 3 defaul value for my 3 new field
immediately after registration) (i speak london xD)
btw, this is a game, i need set default stat to a new user, help please(
When you create your class, you can add defaults. stackoverflow.com/questions/755857/default-value-for-field-in-django-model
Thanks
How to make it so the default user field is the currently authenticated user, Becoz my extended model will be lectures conducted by teacher.... Which he must add whenever he needs it
I can't access the one to one relationship model using user.model_name.column name 😔😔
Thanksss!!!
You're welcome!
Hi, Thank you for this tutorial. When i submit the form i am getting this error. Could you please help. I have
{% csrf_token %} in my page
Forbidden (403)
CSRF verification failed. Request aborted.
Help
Reason given for failure:
CSRF token missing or incorrect.
In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django's CSRF mechanism has not been used correctly. For POST forms, you need to ensure:
Your browser is accepting cookies.
The view function passes a request to the template's render method.
In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL.
If you are not using CsrfViewMiddleware, then you must use csrf_protect on any views that use the csrf_token template tag, as well as those that accept the POST data.
The form has a valid CSRF token. After logging in in another browser tab or hitting the back button after a login, you may need to reload the page with the form, because the token is rotated after a login.
You're seeing the help section of this page because you have DEBUG = True in your Django settings file. Change that to False, and only the initial error message will be displayed.
You can customize this page using the CSRF_FAILURE_VIEW setting.
does anybody where is the video before this, like how he created username, email etc.
There is no any video before this. This video itself demonstrates the complete tutorial.
From 1:41 to 2:05. Here he extended the 'User' model which comes built-in with Django. This 'User' model comes with the necessary fields required for authentication like email, username, and password and also all the validation stuff is handled by django, which is the beauty of django!
This is not worked for me!
You are a héro
Thanks for watching!
Finally I have found the complete tutorial. Thanks man.