Password Reset Email | Django (3.0) Crash Course Tutorials (pt 20)

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 พ.ย. 2024

ความคิดเห็น • 349

  • @DennisIvy
    @DennisIvy  4 หลายเดือนก่อน

    Don't forget to check out my Complete Django course! dub.sh/NvGboTI

  • @AdrianHconnection
    @AdrianHconnection 4 ปีที่แล้ว +55

    For those of you facing the reset-email-sent-but-not-received issue. Make sure the email address, which you're entering into the reset field, actually belongs to a registered user. The clue is in the success message: "... if an account exists with the email you entered." So, if you're entering your own email address as a test, make sure you register a user with your email address.

    • @21williand
      @21williand 4 ปีที่แล้ว

      Thanks!!!

    • @sabasiddika
      @sabasiddika 4 ปีที่แล้ว

      why the two email addresses are different that is given in settings file and reset field?

    • @karthickjayachandran4825
      @karthickjayachandran4825 4 ปีที่แล้ว +2

      @@sabasiddika The email you specify in the settings.py file, is the sender's mail ID, where the one you enter in the reset field is the recipient Mail ID.

    • @rajeshkumarsivaprakasam2159
      @rajeshkumarsivaprakasam2159 4 ปีที่แล้ว

      Ade Enga bro did you solved? i am facing sampe error help me?

    • @syrgakomuraliev
      @syrgakomuraliev 4 ปีที่แล้ว

      @@karthickjayachandran4825 So does it mean that I have to have 2 real accounts to check ?

  • @TwistIO
    @TwistIO 7 หลายเดือนก่อน

    Thank you for the course, still one of the best Django content on TH-cam.

  • @liamg3806
    @liamg3806 3 ปีที่แล้ว

    Amazing tutorial! Your explanations are not too fast, nor too slow.

  • @alasermohamad
    @alasermohamad 3 ปีที่แล้ว

    EVERY THING I WANT TO LEARN AND DO IN MY PROJECT IS HERE IN YOUR DJANGO PLAYLIST THANK YOU A LOT FROM SYRIA BIG THANKS

  • @jodikurniawan3732
    @jodikurniawan3732 4 ปีที่แล้ว +4

    best tutorial in django, change my mind !

  • @denniskiplangatcheruiyot2272
    @denniskiplangatcheruiyot2272 2 ปีที่แล้ว

    I really appreciate your assistance its awesome, wish i had met you earlier.
    I salute Dennis

  • @MrYoklmn
    @MrYoklmn 4 ปีที่แล้ว +13

    Крутое видео. Сейчас буду воплощать) Денис, спасибо, круто!

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +8

      Пожалуйста 😊

    • @САМГАДсамгадович
      @САМГАДсамгадович 3 ปีที่แล้ว +1

      @@DennisIvy значит все таки россиянин ) говоришь совсем без акцента, выдает только имя с фамилией. Запиши видео о том как оказался в америке, интересно было бы послушать

  • @deansaban6574
    @deansaban6574 2 ปีที่แล้ว +8

    for anyone having trouble with gmail's "less secure" policy, this video has the new way of doing it: th-cam.com/video/sCsMfLf1MTg/w-d-xo.html

    • @simeonmwangi4033
      @simeonmwangi4033 2 ปีที่แล้ว

      you save the people from the future

    • @tayeolaniyan537
      @tayeolaniyan537 2 ปีที่แล้ว

      This worked for me. Thanks so much

    • @newmasuda
      @newmasuda 2 ปีที่แล้ว

      Thank you very much. I really appreciate you.

    • @syedadilfazal6588
      @syedadilfazal6588 5 หลายเดือนก่อน +2

      this video is not available anymore

  • @vinaykumar-kg9ed
    @vinaykumar-kg9ed 4 ปีที่แล้ว +1

    your tutorials are amazing...please make a video on user account activation through code by email instead of urls in django it will be very helpful ...thanks

  • @anishamalblanco7386
    @anishamalblanco7386 3 ปีที่แล้ว

    You are doing an amazing work my brother Dennis. Thank you . Extremely grateful. Supporting from Nepal.

  • @Juanagogoolives
    @Juanagogoolives 3 ปีที่แล้ว

    Best django course ever !!!!!!!!!!!

  • @Skaxarrat
    @Skaxarrat 2 ปีที่แล้ว

    Stellar course Dennis. Simple and to the point.

  • @mahdinasirsoltani3657
    @mahdinasirsoltani3657 ปีที่แล้ว +2

    The problem is that google has deleted the "less secure apps option" and that fix is no longer accessible, I would be glad to hear your recommendation...

    • @deez_dev
      @deez_dev 8 หลายเดือนก่อน

      there is a way around this without using google apis.
      you can enter your google account and make an app password and use it instead of the password.
      you must make 2-Step Verification and then you will see App Password, generate one and you are good to go, just replace it with the actual password in you application.

    • @OmarHernandez-fk3hk
      @OmarHernandez-fk3hk 6 หลายเดือนก่อน

      @@deez_dev Hello, i tried it but didnt work. App password is like 4 words with spaces but didnt work, if you could help me would be great

  • @MuhammadUsmanShahid
    @MuhammadUsmanShahid 9 หลายเดือนก่อน

    Amazingly Explained, Thank you Dennis for this great effort of yours 👍👍👍👍

  • @khazartalibov7911
    @khazartalibov7911 4 ปีที่แล้ว

    You are the best teacher for me

  • @hadjermohabeddine7645
    @hadjermohabeddine7645 4 ปีที่แล้ว +2

    Really thank you for this tutorial it is really helping me with my project

  • @rutviktak716
    @rutviktak716 4 ปีที่แล้ว

    Been following this series and yes,i did learned a lot and understood better from this series😊
    Thanx man 🤗

  • @naveenkumawat4571
    @naveenkumawat4571 4 ปีที่แล้ว

    Thank you Dennis Ivy sir, for all this video lectures of django 3. I have gained a lot of new things in the journey of learning django

  • @AhmedRakan-y3v
    @AhmedRakan-y3v 4 ปีที่แล้ว +1

    Dennis you are a legend mate!

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +1

      Haha I appreciate that :)

  • @roniDM.05
    @roniDM.05 4 ปีที่แล้ว

    love your wok on this series thanx Mr Ivy.

  • @jhoanmartinezsilva2609
    @jhoanmartinezsilva2609 3 ปีที่แล้ว

    Hi Dennis, Please a video in how to override the forms by default in django, please, i have done a couple but i would like understand in deep how to, your teaching skills help us aaa lot, thank you fur your mission

  • @hopesain5065
    @hopesain5065 ปีที่แล้ว +1

    Google no longer provide less secured apps option 😢😢. Any alternative?

    • @deez_dev
      @deez_dev 8 หลายเดือนก่อน

      there is a way around this without using google apis.
      you can enter your google account and make an app password and use it instead of the password.
      you must make 2-Step Verification and then you will see App Password, generate one and you are good to go, just replace it with the actual password in you application

  • @fabiof.deaquino4731
    @fabiof.deaquino4731 4 ปีที่แล้ว +1

    Great and Useful Explanations. Well done!

  • @alejandromoreno9960
    @alejandromoreno9960 4 ปีที่แล้ว +5

    Hi Dennis! Great tutorials! I hope you read this and I just wanted to ask if you can make a tutorial to convert all your function views in class based views!! It would be great!

  • @abysebastian9708
    @abysebastian9708 4 ปีที่แล้ว

    To all the people who are having problem with updateOrder do this.
    Clear database and redo makemigration and migration it would resolve that problem.

  • @yousefiazkco1440
    @yousefiazkco1440 ปีที่แล้ว

    for Less secure app access..Using Security=>App passwords=>set smtp password

  • @bxtiyarqarasov8559
    @bxtiyarqarasov8559 4 ปีที่แล้ว

    Very good explanation and also your topic choice is awesome.

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +1

      Thank you :)

  • @7hours732
    @7hours732 3 ปีที่แล้ว

    Worked like a Charm

  • @ericmarquez4645
    @ericmarquez4645 2 ปีที่แล้ว

    Hola Dennis, thank you for this tutrorial, waiting next tutorial

  • @VedanttMehtaa
    @VedanttMehtaa 4 ปีที่แล้ว +3

    Reverse for 'password_reset_confirm' not found. 'password_reset_confirm' is not a valid view function or pattern name.

  • @JohnnysaidWhat
    @JohnnysaidWhat 4 ปีที่แล้ว +3

    If anyone is getting "'password_reset_confirm' is not a valid view function or pattern name" let me spare you the pain I went through:
    First off this probably is happening because you included app_name = 'accounts' in your urls.py file. Name spacing is a good thing you're not doing anything wrong.
    1. In the main app (the one that has settings.py) add this to urls.py:
    path('accounts/', include('django.contrib.auth.urls')),
    2. In settings.py make sure you have this as your TEMPLATES variable
    it doesn't have to be exact, the important part is the "DIRS":
    TEMPLATES = [
    {
    "BACKEND": "django.template.backends.django.DjangoTemplates",
    "DIRS": [os.path.join(BASE_DIR, 'templates')],
    "APP_DIRS": True,
    "OPTIONS": {
    "context_processors": [
    "django.template.context_processors.debug",
    "django.template.context_processors.request",
    "django.contrib.auth.context_processors.auth",
    "django.contrib.messages.context_processors.messages",
    ]
    },
    }
    ]
    3. In the top most directory (same level as the accounts app folder NOT inside it) create a folder called templates and inside that create a folder called registration. Add the following files inside the registration folder. I will also include a quick hint for each because the names confuse me all the time:
    password_reset_form.html - forgot your password?...
    password_reset_done.html - we've emailed you instructions...
    password_reset_email.html - the actual email message in your inbox
    password_reset_confirm.html - please enter your new password...
    password_reset_complete.html - the password has been changed!
    I have each file example in a simple little repo here: github.com/sojohnnysaid/django-auth-reset-views
    edit: made sure to link this series in the github repo and shout out to Dennis who is awesome

    • @sofistoyanova7121
      @sofistoyanova7121 4 ปีที่แล้ว +3

      I solved it only by adding this line:
      path('', include('django.contrib.auth.urls'))
      to the main app urls.py. But anyway thank you for the answer, I thought I am the only one with this error

    • @ninou5446
      @ninou5446 4 ปีที่แล้ว

      I had the same bug before, to fix this you have just to write the same code denis wrote in main urls file (crm1/urls.py) and you need to add in the templates folder a folder named registrations that has inside a file with the name password_reset_email.html (it's the email that will be sent to the usert to reset his password) you can check my repo on github to see how I did it github.com/Ninou01/customer-relationship-management-system/blob/master/crm1/urls.py

    • @alpii6470
      @alpii6470 2 ปีที่แล้ว

      Thanks, bro!

    • @wengallbi_td
      @wengallbi_td ปีที่แล้ว

      @@sofistoyanova7121 thanks bro

  • @ariesjakaradytiamustika8821
    @ariesjakaradytiamustika8821 4 ปีที่แล้ว

    Big thanks from indonesia dennis, u made my days :)

  • @pavansai2182
    @pavansai2182 3 ปีที่แล้ว

    Instead of making it using less secure enabled you can create an app in your google account at security page by enabling 2 step verification

  • @doniyorabduvokhidov1706
    @doniyorabduvokhidov1706 4 ปีที่แล้ว +2

    Greetings from Uzbekistan!
    Спасибо за классное видео!!

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +1

      My pleasure! Thank for saying hello :)

    • @syrgakomuraliev
      @syrgakomuraliev 4 ปีที่แล้ว

      приятно видеть соседа, я из Кыргызстана

  • @weixiangng8279
    @weixiangng8279 6 หลายเดือนก่อน +1

    Your videos are great. I do follow your code and tutorials but my email has not received any mails for forgot password in django. Can advice?

  • @abdulqadar9580
    @abdulqadar9580 ปีที่แล้ว

    Amazing Tutorial

  • @bellosegun
    @bellosegun 4 ปีที่แล้ว

    Wow...Wow...Wow.... God bless you....Been following your vids...Love from Nigeria....

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว

      bello segun thank you!

  • @yousufaley
    @yousufaley 2 ปีที่แล้ว

    Thank you, sir, this tutorial is awesome.

  • @pooryakh7969
    @pooryakh7969 2 ปีที่แล้ว

    you saved me days buddy! Thanks

  • @بلقاسمالمامون
    @بلقاسمالمامون 3 ปีที่แล้ว

    You are doing just great bro god bless u

  • @eugencius
    @eugencius ปีที่แล้ว

    Great tutorial, helped me a lot, as so the comments here!

  • @MarsLanding91
    @MarsLanding91 4 ปีที่แล้ว

    Thanks Dennis!

  • @kwonkwon7460
    @kwonkwon7460 2 ปีที่แล้ว

    excellent tutorial!

  • @DavranbekSabirbayev
    @DavranbekSabirbayev 4 ปีที่แล้ว

    super tutorial thats all of works which you explain,

  • @sreemannarayana3942
    @sreemannarayana3942 2 ปีที่แล้ว

    Great tutorial.

  • @mohamnedgh5244
    @mohamnedgh5244 4 ปีที่แล้ว +15

    Now the page of saying we have sent an email pops up but nothing send to my email at all!!.

    • @aldrinsaurovsarker5159
      @aldrinsaurovsarker5159 4 ปีที่แล้ว +2

      because you have to use the exact email which is used to create user account

    • @paolo13305
      @paolo13305 3 ปีที่แล้ว

      Try to declare DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

    • @peanutsee
      @peanutsee 3 ปีที่แล้ว

      You need to make sure the email exists and that the user has that email. Otherwise, django email will fail silently!

  • @shakilahmmed4932
    @shakilahmmed4932 4 ปีที่แล้ว

    Please Make Videos On Class Based Topics , Custom Query Set, Manager , MIddleware

  • @salvationmatters8448
    @salvationmatters8448 2 ปีที่แล้ว

    we can obtain an 'app password' from gmail, which can be used instead of the real password. I think it would also solve the malicious attempt thing.

  • @davidafonso5359
    @davidafonso5359 11 หลายเดือนก่อน

    Super!! Thankyou so much! How would be implemented without templates? For exemple with React JS? And how could I test it with Postman?

  • @FahadAlSumman
    @FahadAlSumman 4 ปีที่แล้ว +1

    I appreciate your efforts, and you have a good explanation for this issue
    regards,

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว

      Thank you :)

  • @Magistrado1914
    @Magistrado1914 4 ปีที่แล้ว

    Excellent course
    26/07/2020

  • @paolaqendraj9404
    @paolaqendraj9404 3 ปีที่แล้ว +1

    Thank you for this awesome tutorial. Is there any way we can modify the email? For example change the subject or write a customized email body. Thanx :)

  • @SPower-pk9ic
    @SPower-pk9ic 3 ปีที่แล้ว

    In case you get a Redirect error (Cause you‘re using this in a url with own app_name) add from django.shortcuts import redirect

  • @kaam8h
    @kaam8h 4 ปีที่แล้ว +1

    hey man, awesome tutorials! how many videos are going to be in this series and when do you think it will be wrapped up? Absolutely love the way you explain everything clearly

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +7

      Thank you! I'm finishing up with hosting a live database, putting our static files into AWS S3 buckets and finally putting up the project on a Heroku Server.

    • @kaam8h
      @kaam8h 4 ปีที่แล้ว

      @@DennisIvy looking forward to it! Keep up the great work

  • @mIPhoneShere
    @mIPhoneShere 4 ปีที่แล้ว +4

    I must be missing something, because when I submit to send my password, it does the POST request to /reset_password/ followed by "GET /accounts/password_reset/done/" which misses my 'reset_password_sent/' view. If I type the url path manually: "/reset_password_sent/" it works as expected and displays my custom template.

    • @mIPhoneShere
      @mIPhoneShere 4 ปีที่แล้ว

      I also just finished visiting the code repository and copying exactly what was there. Still no luck. Visiting the paths manually works. Did Django change this already?

    • @mariomargjini1062
      @mariomargjini1062 4 ปีที่แล้ว

      i have the same problem. I dont know how to fix it. If u have found a way pls tell me.

  • @hamidrajabi8775
    @hamidrajabi8775 3 ปีที่แล้ว

    great teacher. Thanks a lot.

  • @SA-es5gs
    @SA-es5gs 4 ปีที่แล้ว

    This is a amazing video, thank you

  • @lambertnjambe6517
    @lambertnjambe6517 3 ปีที่แล้ว

    Thanks for the tuto ! It is amazing ! I can fetch the message from my console but not able to send an email , my django version is 3.1.4 !

  • @imleviathanx
    @imleviathanx 3 ปีที่แล้ว

    Great tutorial. U re best

  • @davidbadea1360
    @davidbadea1360 ปีที่แล้ว

    (this is for me you can use it as a waypoint as well)
    7:29

  • @theswan12849
    @theswan12849 4 ปีที่แล้ว

    great explanation .. Thanks guru

  • @primuspilus2924
    @primuspilus2924 4 ปีที่แล้ว

    Great tutorial! Thank you! Спасибо!

  • @-ghost-4
    @-ghost-4 3 ปีที่แล้ว

    Very helpful thank you! do you have a tutorial about posting a form and saving in admin based on a model ?

  • @avadhootautade9122
    @avadhootautade9122 3 ปีที่แล้ว

    Great Tutorials man!!!!!!!!!!! Can you please share your own notes?

  • @andrewpoldjacobocastillo308
    @andrewpoldjacobocastillo308 4 ปีที่แล้ว

    Muchas gracias !! , eres bastante bueno en lo que haces

  • @KevinTempelx
    @KevinTempelx 4 ปีที่แล้ว

    Thank you!

  • @ShubhamMishra-gc5ow
    @ShubhamMishra-gc5ow 4 ปีที่แล้ว

    great lecture Dennis thank you very much.
    and one thing you new series video is private ??? why?

  • @TheAremoh
    @TheAremoh 4 ปีที่แล้ว

    Well explained. Thank you.

  • @johnmendoza7077
    @johnmendoza7077 4 ปีที่แล้ว

    Great! You are the best! Thnks

  • @lftf-beats
    @lftf-beats 4 ปีที่แล้ว

    Superb

  • @mahmudsajib8648
    @mahmudsajib8648 4 ปีที่แล้ว +3

    Hi, thanks for the great tutorial again. 1 Question : Suppose I have 10 users on the website & each of them wants to reset password. How do we make this functionality? From your tutorial it seems only 1 person(administrator) can reset password since his email is put into SMTP configuration.

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +7

      Good question :) You missed one thing. The email that we set in the SMTP configuration is the email that will send the password reset message. Django needs us to provided a sender, BUT the password reset email will be sent to the email which the user provides in the form. Sorry i didn't explain that better :)

    • @mahmudsajib8648
      @mahmudsajib8648 4 ปีที่แล้ว +2

      @@DennisIvy thanks for your explanation

  • @fforfun8931
    @fforfun8931 4 ปีที่แล้ว

    thankyou so much

  • @StarboyAP
    @StarboyAP 10 หลายเดือนก่อน

    Great Tutorial!!!! Can you please send the source code link? The link in the video description is not working.....

  • @umeshpandey5226
    @umeshpandey5226 3 ปีที่แล้ว

    Thanks you

  • @ashleyadrias
    @ashleyadrias 4 ปีที่แล้ว

    Great video! What are the other methods beside SMTP? Do we have to create an email address?

  • @behnamgolmohammadiyengabadi
    @behnamgolmohammadiyengabadi 2 ปีที่แล้ว

    So useful

  • @eduardogarcia2421
    @eduardogarcia2421 4 ปีที่แล้ว

    Great video!! thank you so much.
    I have a question thou, how would I go about changing the email template?, the website im building is in spanish and I need to change the email sent template to be in my language, I justo don't know how to access it to changed it and still send a one time link to reset the password.

  • @waqarshaikh716
    @waqarshaikh716 3 ปีที่แล้ว +1

    How to know which user's password is being reset?
    Please reply anyone.

  • @shivamm3401
    @shivamm3401 4 ปีที่แล้ว +1

    I got error when accessing "reset_password", what does it mean? SMTP AUTH extension not supported by server

  • @fahadfoysal664
    @fahadfoysal664 4 ปีที่แล้ว

    Nice explanation, carry on...

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว

      Thank you 🙏

  • @rezaghadiri4430
    @rezaghadiri4430 4 ปีที่แล้ว

    Thanks!

  • @admiadmin5898
    @admiadmin5898 4 ปีที่แล้ว

    Thenks bro!!

  • @abcrectify6916
    @abcrectify6916 4 ปีที่แล้ว

    please make some videos on sessions ,cookie and cache system in Django

  • @aashayamballi
    @aashayamballi 4 ปีที่แล้ว

    Thank you 😊😊

  • @mustaqmohammad7686
    @mustaqmohammad7686 4 ปีที่แล้ว +1

    Great Tutorial!!!!! I was able to get the email, I'm using a username to login but when I log in with the same username that is linked to that email, It doesn't take the new password. And also I don't get the last page Complete.html, can you please help?

  • @samirCasiani
    @samirCasiani ปีที่แล้ว

    excelente

  • @RavinderSingh-un7ky
    @RavinderSingh-un7ky 4 ปีที่แล้ว

    You are too good!

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว

      Thank you my friend :)

  • @dissolvesoftware
    @dissolvesoftware 4 ปีที่แล้ว

    Create a playlist for the Django tutorials so that they are easily accessible

    • @talhashakil8245
      @talhashakil8245 4 ปีที่แล้ว

      He has already made a playlist of Django

  • @ahmadsaadeddin9035
    @ahmadsaadeddin9035 4 ปีที่แล้ว

    thx very much for this Tutorials it really help
    there error when use app_name in urls in app get error
    any solution to that error

  • @rezarostami891
    @rezarostami891 4 ปีที่แล้ว

    Thank you 😊😊
    very goog

  • @Viachev
    @Viachev 4 ปีที่แล้ว

    gosh thanks a lot!!!

  • @MrYoklmn
    @MrYoklmn 4 ปีที่แล้ว +2

    Денис, а ты сможешь сделать видео с подтверждением мэйла и телефона? И чтобы только с этим активировался аккаунт

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว +2

      Да, у меня другие спрашивали тоже. Мне надо перво другие видеос с делать перво. Потом доберусь до этой :)

    • @MrYoklmn
      @MrYoklmn 4 ปีที่แล้ว

      @@DennisIvy Спасибо! Буду ждать)

  • @kunalsharma-zc2ho
    @kunalsharma-zc2ho 4 ปีที่แล้ว

    Nice tutorials !...Hey please make some content on search Box with paginations.

    • @DennisIvy
      @DennisIvy  4 ปีที่แล้ว

      Thank you! Coming soon :)

  • @arjunag4830
    @arjunag4830 3 ปีที่แล้ว

    how are you passing that form dynamically to the template?

  • @vickinomwesigwa4936
    @vickinomwesigwa4936 4 ปีที่แล้ว +1

    Hi thanks for the tutorial, I can't seem to get past the error Reverse for 'password_reset_confirm' not found. 'password_reset_confirm' is not a valid view function or pattern name. I have cross checked my url paths and everything should be okay but for some reason its failing

    • @ninou5446
      @ninou5446 4 ปีที่แล้ว +1

      I had the same bug before, to fix this you have just to write the same code denis wrote in main urls file (crm1/urls.py) and you need to add in the templates folder a folder named registrations that has inside a file with the name password_reset_email.html (it's the email that will be sent to the usert to reset his password) you can check my repo on github to see how I did it github.com/Ninou01/customer-relationship-management-system/blob/master/crm1/urls.py

  • @AmirhomayounSalehi
    @AmirhomayounSalehi หลายเดือนก่อน

    hi i have a NoReverseMatch at /reset_password error when i want to go to reset password confirm page!

  • @anasbhih5114
    @anasbhih5114 2 ปีที่แล้ว

    I'm having a problem overriding the default templates with my custom ones. I followed the tutorial bus still doesn't work

  • @BehruzbekOtayev
    @BehruzbekOtayev 4 ปีที่แล้ว

    Can't thank you enough

  • @adarshbilimisi1162
    @adarshbilimisi1162 ปีที่แล้ว

    Working 🙏