Django - Building Form Wizards with formtools and django-crispy-forms

แชร์
ฝัง
  • เผยแพร่เมื่อ 8 ม.ค. 2025

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

  • @melissastrong8656
    @melissastrong8656 3 หลายเดือนก่อน +2

    If I could upvote x1000, I would. Thank you for your content, it is amazing.

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

      Thanks a lot!

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

    Underated channel, clear and precise instructions. Thank you!

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

    I just discovered your channel. Thanks for all those great tutorials you are putting out on here.

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

      Thanks a lot! Glad you're liking them :)

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

    wow you are a wizard by reading my mind.. I was just struggling with this :) thanks a lot for the video

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

    It feels like 2023 is going be a fun year with your caviar tutorial mate 🙌🏾. This is a master piece 🧩. Thank for all. Good job !

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

      Thank you mate!
      Much appreciated and all the best for 2023.

  • @mr.h3758
    @mr.h3758 2 หลายเดือนก่อน +1

    Thanks man, You are perfect. God bless

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

      @@mr.h3758 thanks a lot mate!

  • @StudiofrogPl
    @StudiofrogPl 7 หลายเดือนก่อน +1

    rly nice tutorial, very informative nad useful. Thank You. Yes we want more django forms :)

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

      Thanks a lot! Much appreciated!

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

    I love the way you teaching sir. especially the use of documentation in your tutorials. Very clear and understandable

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

      Thanks a lot! Glad you like the videos!

  • @raulcorrear.4128
    @raulcorrear.4128 ปีที่แล้ว

    Increible tutorial super claro, deberia tener más me gusta (ya colaboré con uno jeje) Saludos desde Lima, Perú. Incredible tutorial, very clear! It should have more likes (I already contributed with one, hehe). Greetings from Lima, Peru.

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

      Gracias! And thank you for the like! Would love to visit your country some day. Greetings from Scotland.

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

    Very practical tutorial always. Thank you very much.

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

    Great video as always, would love to see the form preview you mentioned as well.

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

      Thanks a lot Rob! I'll have a look at creating a short video on that one too 👍

  • @miclemabasie4424
    @miclemabasie4424 3 หลายเดือนก่อน +1

    Perfectly Done, Thank you sir.

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

      Thank you! Much appreciated

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

    Very nice video, very helpful. Would love to see a follow-up about form preview. Thanks.

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

      Thank you! I did a follow-up on Previews here:
      th-cam.com/video/d5YlrHe0uzw/w-d-xo.html

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

    Exactly what I was looking for! Very informative video. Cheers

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

      Thanks a lot!

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

    Thanks for this another excellent video. It'll be good to have a more styled form and differents types of forms.
    Thanks again.

  • @ДимаПолушкин-ш6б
    @ДимаПолушкин-ш6б 3 หลายเดือนก่อน

    как всегда лучший! спасибо брат!!!

  • @jacob_mp
    @jacob_mp 8 หลายเดือนก่อน +1

    Very Usefull. Great tutorial.

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

      Thanks a lot!

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

    Nice work. Thank you.

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

      You're welcome, thanks for watching!

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

    All of your videos are awesome no doubt

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

      Thanks a lot!

  • @gavalmart
    @gavalmart 10 วันที่ผ่านมา

    Hello Lyle. Another great tutorial ... what a channel you have created!!! This scenario (form wizards) gives us a way to build clearer UI for the user. However, how would you handle the case that in the first form you enter the main info or header info of an invoice and you wanted that in the second form you would like the customer to add the items or detail of the invoice. Would it be possible to add an inlineformset in the second form?

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

    This is great, thank you so much!

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

      Thanks for watching!

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

    Excellent video as usual. Yes please to more form videos. Is it possible to have duplicate forms - lets say you have a list of goals, how would you dynamically add more goals to the wizard process? Would you create a new page for each goal or would you handle that on a single page? Probably a single page come to think of it. How would you handle that BugBytes?

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

    Congratulations man ! Very interesting.
    Paulo from Brasil.

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

      Thanks a lot Paulo! Greetings from Glasgow.

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

      @@bugbytes3923 Please, if it is possible for you help me pleaase. How to do if I use forms.ChoiceField not forms.BooleanField. How I fixed cleaned_data = wizard.get_cleaned_data_for_step and condition_dict? I do not want to importunate you. Thank you so much.

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

      In fact I have 5 forms.

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

    Always enjoyed your content. Kindly do something on the complete ecosystem: Django + HTMX (for AJAX) + HyperScript (for other dynamic aspects) + TailWind

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

      Thanks a lot!
      That's coming up before summer for sure.

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

    Useful content as always,
    Congrats👍

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

    Thank you sir!

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

    Nice as always, waiting for full stack app 😁

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

    Great video as always 👍🏼
    Now in react please; seems much easier to handle in the backend! If you have to jump through that many hoops to make a simple Wizard in Django, I'd think it's the same effort to do it in React

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

      Thanks! I haven't done anything with React on the channel yet, but I guess it'll happen at some point... 😄

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

    Awesome 🙂

  • @vivaldi-qo7xj
    @vivaldi-qo7xj ปีที่แล้ว +1

    thanks. its useful.

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

    Bro how tf you always know exactly what I've been reading about and trying to figure out XD

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

      Haha good timing ;) Thank you.

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

      @@bugbytes3923 Perfect lol. Literally started looking into formtools yesterday to implement product attributes like in django-oscar. Weirdly enough, same thing with htmx and the webcomponent related packages. Thanks for the great content! Learn more in every one of ur vids than hours of looking through SO, docs, source code, and asking gpt3

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

    Great lesson

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

    Good video ;) worth to add atomic transaction for db operations

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

      Thanks! And that's a very good point! The entire done() method should really be wrapped in a transaction.

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

    thank you!

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

    Good video as usual.When is the complete Django,htmx , alpine project due?

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

      Thanks! I hope to start releasing that in the next month, but it'll likely be around April.

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

      @@bugbytes3923 thanks

  • @DMUT-c3e
    @DMUT-c3e ปีที่แล้ว

    Thank you!

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

    nice work. For me, I'd rather stick to htmx than this. After watching your playlist on it, I'm so loving it

  • @Altar-of-God
    @Altar-of-God ปีที่แล้ว

    Hello! I have difficulty saving when I use the def done(self, form_list): function

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

    what about using a drop down list within a wizard so that it should be having a different next page based on the option selected on the drop down list

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

    This is a great tutorial. Do you think this will work in an application that uses mulitforms?

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

      Thank you! I'll be honest, I'm not sure what multiforms are, really.
      The idea behind the wizard is to take multiple forms and submit them all in one staged workflow. Are multiforms similar to this?

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

    Hello, Great Tutorial !
    especially I'm working on register wizard :
    my question is how to save user object based on all form_list ?
    I mean how to do something like this: user = form_list.save(commit=False)

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

    Thank you for your work and everything you "return to the community". The niche which you found yourself is excellent - especially htmx helped me a lot. I started following you, when you had just over 3k followers. You well deserve the growth of your channel!

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

      Thanks a lot Adriano! Really appreciate that nice comment - glad the channel has helped!

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

      Btw. did you think of extending this tutorial with an htmx/modal tutorial? Or is that straight forward and easily implemented? Guess what I am working on right now 😂

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

    Thanks!

  • @ExcellentSports-w2k
    @ExcellentSports-w2k ปีที่แล้ว +1

    Hello sir, my form is not getting saved, done method is not working. Please help

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

      What code do you have in your done method?

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

    is it possible to present a single model into multi-step forms, say 3 forms for model Employee?

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

      Good question. Yes, this is possible, but you'll have to build three different Form subclasses (NOT ModelForms) and then combine the data at the end in the done() method.

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

      @@bugbytes3923 thanks

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

      @@bugbytes3923 i have been looking for this ...... but what do you mean by building three different Form subclasses (NOT ModelForms) and then combine the data at the end in the done() method

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

    does it work with django-widget-tweaks?

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

    Hey mate, here is my question : Can we have a different template for each form in the form Wizards with formtools (django-formtools) ? If yes, please make a tutorial to show us the usage thank you.

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

      Hey mate. Yes, for sure - you can have a template for each step in the form wizard. I'll try and create a short demo!

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

      Thank you in advance my dear, I really need it.

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

    thanks

  • @ExcellentSports-w2k
    @ExcellentSports-w2k ปีที่แล้ว

    in my done method class MultiStepFormView(SessionWizardView):
    form_list = [ TimeSlotForm, DetailForm]
    template_name = 'sm_appointment/index.html'

    def done(self, form_list, **kwargs):
    form_data = [form.cleaned_data for form in form_list]
    print(form_data)
    return HttpResponseRedirect('form submitted')

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

    Just curious - where's your accent from? I'm thinking Scotland, but I'm not sure if I've heard it before... 🙂

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

      Hi Bruno - yes, Scotland 🙂
      Hope the accent is not too difficult to understand!

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

      Not at all! Very clear and interesting accent. Thanks for replying

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

    thank you

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

      You're welcome, thanks for the comment!

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

    I just discovered your channel. Thanks for all those great tutorials you are putting out on here.

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

    Hello sir, my form is not submitting, done method is not working. Please help