No video

Django & HTMX - Dynamic Form Creation and Submission

  Рет қаралды 28,181

BugBytes

BugBytes

Күн бұрын

In this video, we look at how to dynamically create forms using Django and HTMX, and look at how to dynamically submit these forms - both individually, and as a group.
We'll see some cool tricks here, such as:
- Using the hx-on attribute to perform actions after submission
- Using the "from" trigger modifier to trigger submission of all forms via a single button click
☕️ 𝗕𝘂𝘆 𝗺𝗲 𝗮 𝗰𝗼𝗳𝗳𝗲𝗲:
To support the channel and encourage new videos, please consider buying me a coffee here:
ko-fi.com/bugb...
▶️ Full Playlist:
• Django & HTMX
📌 𝗖𝗵𝗮𝗽𝘁𝗲𝗿𝘀:
00:00 Intro
00:43 Defining model and ModelForm
02:53 Adding Form to View and Template
07:21 Adding forms dynamically with HTMX
12:04 Submitting forms individually with HTMX
13:55 Adding contact list to template
17:36 Removing form after submission with hx-on attribute
19:13 Submitting multiple forms at once with HTMX
22:02 Adding Cancel button to clear forms
𝗦𝗼𝗰𝗶𝗮𝗹 𝗠𝗲𝗱𝗶𝗮:
📖 Blog: bugbytes.io/po...
👾 Github: github.com/bug...
🐦 Twitter: / bugbytesio
📚 𝗙𝘂𝗿𝘁𝗵𝗲𝗿 𝗿𝗲𝗮𝗱𝗶𝗻𝗴 𝗮𝗻𝗱 𝗶𝗻𝗳𝗼𝗿𝗺𝗮𝘁𝗶𝗼𝗻:
django-htmx-todo-list (Jack Linke): github.com/jac...
hx-swap: htmx.org/attri...
hx-on: htmx.org/attri...
django-htmx CSRF tip: django-htmx.re...
#django #python #htmx

Пікірлер: 102
@user-xu7jz4li7e
@user-xu7jz4li7e Жыл бұрын
Whenever I see new BugBytes videos, I click "like" first, before grabbing a drink to go along with watching the video. 😁
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks! Glad you like the videos 👍
@trosgate
@trosgate Жыл бұрын
I have no doubt that this teacher will reach 10,000 users in no time. Simple reason is that he knows how to implement and utilize the capabilities of external packages
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot for the nice comment, really appreciate it!
@AmoahDevLabs
@AmoahDevLabs Жыл бұрын
I can't believe you're still doing these tutorials. Your work is beyound expectations. To be frank with you, "You're very much sefless". You always enlighten people. This is what I call the TRUE GOSPEL. I really appreciate all your works.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot! Means a lot, thank you.
@s.victor7740
@s.victor7740 19 күн бұрын
This is awesome; keep on the good work. The video explains what I need to complete my project.
@bugbytes3923
@bugbytes3923 18 күн бұрын
Glad to hear the video has helped! Thank you for the support!
@lucidcatnap
@lucidcatnap 11 ай бұрын
Subscribed for the amazing combination of relevant web development content and a Scottish accent
@bugbytes3923
@bugbytes3923 11 ай бұрын
Thank you, and greetings from Glasgow! 😄
@aleksmith2808
@aleksmith2808 Жыл бұрын
Came from another one of your videos, you can't imagine my relief when I saw you also do htmx tutorials. Keep up the great work, love the Django and HTMX content
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot Alek! Glad you're liking the content - will keep going 💪
@bitpilot79
@bitpilot79 7 ай бұрын
You have the best videos on HTMX. Thanks for sharing.
@bugbytes3923
@bugbytes3923 7 ай бұрын
Thanks a lot, appreciate it!
@seydinaoumarsamabaly1806
@seydinaoumarsamabaly1806 Жыл бұрын
Master🙌🏾 , just a delight your tutorials from the day one till today. Thank for everything you're doing for others.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks Seydina! Much appreciated!
@graczew
@graczew Жыл бұрын
Your content is a pure gold mate. Thanx for your time and effort to make this.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot mate. Glad it's being well received!
@graczew
@graczew Жыл бұрын
@@bugbytes3923 I'm follow your channel for longer time and content is really useful. I just hope you will not stop make django content.
@bugbytes3923
@bugbytes3923 Жыл бұрын
@@graczew Thanks a lot for the support over the time, Krzysztof. Django will always be a core part of the content, even with some other stuff mixed in.
@fernandtape9363
@fernandtape9363 Жыл бұрын
Welcome back HTMX. Great as always. Can't wait for the coming full project.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks!
@dovh49
@dovh49 Жыл бұрын
When working with vanilla forms like this `hx-boost=true` is a great attribute. As for having the button outside of the form you could simply use the `form` attribute, like this `Submit`.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Good tips, thanks!
@o3cloudng357
@o3cloudng357 2 ай бұрын
Hello BugBytes, You have been amazing since I found your channel. Can you make a video on how to use htmx to update dynamic forms /formset like this one
@umrana5946
@umrana5946 4 ай бұрын
thanks alot
@bugbytes3923
@bugbytes3923 4 ай бұрын
Thanks for watching!
@MalfuncEddie
@MalfuncEddie Жыл бұрын
Maybe an idea for the next video (django,htmx): How do you create a "wizard" where the questions influence each other. like formA yes/no question (Would you like to know more) if yes -> ask for mail(q1a) ask for name (q1b) --> go to formB if no -> go to form C formB yes/no question (Would you like to know our promo's) if yes: Ask more questions if no: go to end .... at the end I it should return a dict with { q1: true, q1a: "answer", q1b: "answer", q2: false, q2a: "", q2b: "", q3: ... } I know there are "questionaire" django projects but for some reason I can't get my head around them.
@Peterstavrou
@Peterstavrou Жыл бұрын
Another excellent video!
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thank you Peter!
@hakanbilgin6875
@hakanbilgin6875 Ай бұрын
thank you good informations.
@bugbytes3923
@bugbytes3923 Ай бұрын
Thanks!
@craigphollingsworth1460
@craigphollingsworth1460 Жыл бұрын
Great video again! Really, really helpful. Would love to see a follow up on how you would handle validation on the multiple submit. cheers
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot Craig! Will look into an extension of the video 👍
@ermalgashimramori
@ermalgashimramori Жыл бұрын
As always great great content.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot!
@Igor160594
@Igor160594 5 ай бұрын
you are the best
@bugbytes3923
@bugbytes3923 5 ай бұрын
Thanks a lot, appreciate the comment!
@JayJay-th3hd
@JayJay-th3hd 11 ай бұрын
Nice work! Every video is very helpful to understand django and htmx! In this example it's possible to limit the number of forms where the user can create? hx-get="{% url 'create-contact' %}" hx-target="#contact-forms"
@dodokwak
@dodokwak Жыл бұрын
Thx.
@bugbytes3923
@bugbytes3923 Жыл бұрын
You’re welcome!
@UsGreg
@UsGreg Жыл бұрын
Please, make hx-boost tutorial :)
@bugbytes3923
@bugbytes3923 Жыл бұрын
Good idea! Thanks.
@grzegorzkalmus3629
@grzegorzkalmus3629 Жыл бұрын
Nice idea :)
@zawanns
@zawanns 11 ай бұрын
Thank you so much for your content, always helpful. I’ve just used this method and it works perfectly. And i’d like to know what if in the partial form we want to use django-select2 on one of the field. Thank you once more. 😎
@bugbytes3923
@bugbytes3923 11 ай бұрын
Thanks a lot! I'm not sure about django-select2 in this example, but could look into that in a future video perhaps.
@ayubkara1092
@ayubkara1092 Жыл бұрын
thank you as always for the great content , can't help but ask will you ever consider doing something about Django Channels maybe in the future ?
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks a lot! I did this video on Websockets + HTMX that uses Django-Channels. kzfaq.info/get/bejne/fMmGqqd2yNuae2Q.html There will be a full course on Channels this year at some point. I'll start planning this when I get some time in a few months.
@bal_mahmuda
@bal_mahmuda Жыл бұрын
mantap, makasih bug bytes. bagus banget nama channel nya.
@95myou
@95myou Жыл бұрын
it would be really cool if you can add an auto-complete to form line :D BTW really cool content
@user-mq6bd2in1u
@user-mq6bd2in1u Жыл бұрын
Spectacular mate thx! How would you dynamically add more fields/rows to one form? For example, you want to add and number for some, but then want to add additional information, rows, for other contacts and the additional info isn't necessarily 'name' and 'number'.
@AliHassan-wc6nb
@AliHassan-wc6nb Жыл бұрын
Best thing you did ma'am, can we validate all Input value at once while sending all forms at once. . Like all debits must be equal to total credits. Hope you got my point.
@trosgate
@trosgate Жыл бұрын
In the widget, I think we can specify required=True to ensure that any form added is required. Htmx can be used to validate as well
@marcoroose9973
@marcoroose9973 3 ай бұрын
Very nice! But what about form errors?
@smartjoetechnologies
@smartjoetechnologies Жыл бұрын
Thanks sir
@bugbytes3923
@bugbytes3923 Жыл бұрын
You're welcome! Thanks for watching.
@johnsonwambiru8497
@johnsonwambiru8497 Жыл бұрын
life saver thanks
@peterevance
@peterevance Жыл бұрын
Hello Johnson, What are you developing? 😅.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks!
@johnsonwambiru8497
@johnsonwambiru8497 Жыл бұрын
@@peterevance a system for managing invoices and delivery notes so i need a way to add multiple items and save them at a go
@peterevance
@peterevance Жыл бұрын
@@johnsonwambiru8497 Ah , I see. @BugBytes had a video on something like that too. Something like Form Wizard tutorial.
@aafan.kuware
@aafan.kuware 3 ай бұрын
🎉🎉🎉
@bugbytes3923
@bugbytes3923 3 ай бұрын
Thanks!!
@aafan.kuware
@aafan.kuware 3 ай бұрын
@@bugbytes3923 thank you 🙏🙏🙏
@kellyqiu7784
@kellyqiu7784 Жыл бұрын
Thank you! could you please also upload the starter code for this?
@iniasderoeck1345
@iniasderoeck1345 2 ай бұрын
Could you a video on the htmx with django CBV and more advanced relations instead of 1 FK. I have a project im really struggling with... Kind regards
@DenisCardosoTutor
@DenisCardosoTutor 8 ай бұрын
Great tutorial. Is there a way to does not show the "submit all" if there is no form to submit ?
@tofuman9526
@tofuman9526 5 ай бұрын
I wonder. Would you build an app like Typeform with HTMX? Conceptually it seems like SPA approach is more suitable, just because it seems easier to build out. Even the display of the forms themselves, which in Typeform may include some logic, I.e rendering different forms acocording to answer provided…
@asqarsakenov
@asqarsakenov 7 ай бұрын
How to make drop-downs which can fetch only the distinct values from psql? And next drop down in one row should depend on values of the previous choice and etc. I have to filter up the product price based on 4 filters like in excel and then fetch the corresponding price from DB to form an invoice. Thanks in advance!
@joey4uandme
@joey4uandme 3 ай бұрын
Can this be used for a single field in a model? For example. You use htmx to display a field in a model on a form only when another model field choice is selected.
@rokibulhaque1673
@rokibulhaque1673 9 ай бұрын
Hi, Can you please share a tutorial for nested form using Django & HTMX...!!!
@UmutAlverGuclu-xg8ex
@UmutAlverGuclu-xg8ex Жыл бұрын
Thank you! How would you add inline editing - htmx?
@amine63404
@amine63404 5 ай бұрын
I am struggling with something, can you help please. How do we deal with forms errors. I am able to show them, but not able to remove them, because of when the form is valid, it's adding a new line but of course not removing the htmp errors tags.
@eduardsanchez6962
@eduardsanchez6962 Жыл бұрын
greate tutorial OMG, just a question can this works with forenkyes, like add multiples instance of phone number of one person??
@lordAvatar
@lordAvatar Жыл бұрын
Hej BugBytes, great vid as always. I can't seem to find your repo for this one, am I being dumb/crazy?
@TomStoutPhotography
@TomStoutPhotography 6 ай бұрын
I love your videos, but I can't get this one to work. When I click add, it duplicates the entire page with the h1 title and the green add button...
@frameff9073
@frameff9073 Жыл бұрын
thank
@bugbytes3923
@bugbytes3923 Жыл бұрын
You're welcome, thanks!
@VTym-tk8qr
@VTym-tk8qr Жыл бұрын
Hello. Thanks for the video lesson. As always, everything is at the highest level. Could you show how to complete the following task: a block with comments under the post, with sub-levels (replies to comments) and a separate block that adds up the number of comments. Thank you.
@bugbytes3923
@bugbytes3923 Жыл бұрын
Thanks! That's an interesting suggestion. Will add to the list, but it would require a new video and some prep.
@dimasarestu2043
@dimasarestu2043 Жыл бұрын
HTMX with django is really good, but how to validation all form, which if one form fail all form fail submit too
@xVeraldi
@xVeraldi Жыл бұрын
Would you be able to replace the Cancel button with an icon and have the same result using hx-on attribute?
@bugbytes3923
@bugbytes3923 Жыл бұрын
Absolutely! Any icon with an hx-click trigger attached to it will work.
@ewyg
@ewyg Жыл бұрын
which one should I use? hyperscript or alpinejs...? seems like alpinejs is more popular and mature?
@bugbytes3923
@bugbytes3923 Жыл бұрын
Both are great choices. Alpine is probably more popular and mature, though.
@albyunni8211
@albyunni8211 11 ай бұрын
This code is the one i am looking . can i get the code
@dglebable
@dglebable 2 ай бұрын
Can you provide the source code you have created?
@kingbabu7373
@kingbabu7373 7 ай бұрын
How to get single submit button for all multiple forms to submit to the database
@bugbytes3923
@bugbytes3923 7 ай бұрын
There's a "Submit All" button in the latter part of this video I think, to show how to submit all the forms on the page.
@kingbabu7373
@kingbabu7373 7 ай бұрын
Submit all button is not working for my multiple orders to submit on click
@prezlamen
@prezlamen 18 күн бұрын
Can this be done in flask?
@bugbytes3923
@bugbytes3923 18 күн бұрын
It could be done in Flask, with a few alterations - switch the Django forms with WTForms, for one. flask.palletsprojects.com/en/3.0.x/patterns/wtforms/ All the HTMX stuff can be done with Flask in a very similar manner.
@prezlamen
@prezlamen 9 күн бұрын
@@bugbytes3923 Thank you! If I can suggest, try to increase font size for KZfaq.
@carloseduardovieiramartins6102
@carloseduardovieiramartins6102 Жыл бұрын
Its possible tô make for example, a tree level form, with a product , color and sizes variants to submit ALL together and get the fk for each one?
@catalinim4227
@catalinim4227 11 ай бұрын
why not use one form with multiple rows 🧐
@shivavsk6178
@shivavsk6178 11 ай бұрын
Can you share the source code for this
@dglebable
@dglebable 2 ай бұрын
Was there a reply to this request for code?
@dstrelnikov
@dstrelnikov 3 ай бұрын
man you do great tutorials, but can't understand how "div" element became to be "dev" in pronunciation, same for "file" -> "fail"
@bugbytes3923
@bugbytes3923 3 ай бұрын
Thanks! Sorry, the Scottish accent is quite particular about these things.
@alexforget
@alexforget 6 ай бұрын
that repo is all broken, the code hasn't been updated for 3 year and is no longer working with django
@umairsarwar7472
@umairsarwar7472 11 ай бұрын
django-htmx - Django Extensions for Working with HTMX
37:06
BugBytes
Рет қаралды 22 М.
Fortunately, Ultraman protects me  #shorts #ultraman #ultramantiga #liveaction
00:10
Кадр сыртындағы қызықтар | Келінжан
00:16
Box jumping challenge, who stepped on the trap? #FunnyFamily #PartyGames
00:31
Family Games Media
Рет қаралды 31 МЛН
Django & HTMX App - Setup, Models and Management Command
25:35
Pandas  Sketch - The Jupyter Notebook Data Analysis Tool You Didn't Know You Wanted
9:44
Modal forms with Django+HTMX
54:21
Benoit Blanchon
Рет қаралды 34 М.
HTMX - hx-select and hx-select-oob Attributes in HTMX
11:49
HTMX is amazing!
10:16
Maximilian Schwarzmüller
Рет қаралды 17 М.
Dynamic list views with Django and htmx
34:09
Matt Segal
Рет қаралды 14 М.
Create a Dependent Select Field in Django With HTMX
14:37
Pretty Printed
Рет қаралды 17 М.
Django Dynamic Forms Tutorial with Htmx
48:27
Matt Freire
Рет қаралды 67 М.
Fortunately, Ultraman protects me  #shorts #ultraman #ultramantiga #liveaction
00:10