I really like django extension to populate the slug automatically. I normally created the prepopulated fields in the model admin, but this is much cleaner
This was beautiful to watch. I have always struggled with DRF; this will be my new go-to framework. It allows you to code as you picture it without restrictions or being overly opinionated. In my opinion, this is more pythonic.
Thank for the video. I have been waiting for a Django Ninja update video. Could you please do a video on django-extensions and Django-extras, I have seen you using it a few times
Thanks for sharing your experience. While following the videos, I was wondering few things I was wondering if you had any specific reasons for the followings otherwise approaches in the videos: - the update endpoint: while creating the endpoint to update the device location, you 've used defined your endpoint with verbs. To properly convey with REST good practices defining the endpoints withs the resources name could improve the APi - update request using post: maybe this was not the main focus, this could be improved by using patch or put methods. I am just curious to pick your mind on it. Once again, great and straight forward video ! Thanks
If you make a video using a more "clean" approach(use-cases, repositories, services etc) to which django-ninja would perfectly fit, that would be a banger(imho)
My understanding from reading opinions on reddit and other sites - is that a lot of people find serializers/views in DRF quite confusing when you need to go beyond basic CRUD stuff. I think there's a bit of a learning curve to understand its nuances, but I personally love DRF, and of course many others do too. I guess Ninja is just a different approach with less "magic" in the views.
Greate video. I don't know how to make the api calls more secure. Can you use the built-in users that always exist in a Django site? I would love to see this in the next video because security is needed even for basic API:s. Maybe someone has a link to share how it is done.
Thanks a lot Keyton! That's exactly the use-case I think - if you have a Django app (or want to create one) that needs an API, then this is a nice alternative to DRF!
In the Schema for Location, you have 'id', 'name'. I get the name part, since it's defined on the model. I also get the id on the Device Schema, since that's also on the Device Model. I just don't get where the id for the locations is coming from, since location has only a single field called 'name'. Thank you, BugBytes 🙌🏽
I believe the id field is added to all models by default. No need to be set up by the user. It’s necessary for the database to establish a unique primary key for each instance of the model
@@steogen, oooooh; and he explicitly sets up the id field for Device using uuid4 because he didn't want to have just a simple integer as the id for the devices, right? I get it now. Thank you very much. You're a good person🤝🏾
Thanks for the video! One question: There are _2_ "get_devices" methods, for devices and locations endpoints but it still works, I assume because of the decorator but the 2nd method doesn't override the first one?
Yeah, this was a mistake (corrected in the django-ninja-extra video) - the second function should be called "get_locations()". It must work due to the decorator wrapping the function!
Trying to create Many-to-Many relationships, you'd have thought that you'd do it in a similar way, `list[str]` but when I try this, I always get an error, saying that fields are missing, that don'e even appear in the schema, or the model ....
The Instant Client is installed and in the correct path. I have a Laravel application using Instant Client and it works perfectly. I read that Django 5 only works with Oracle version 19 or higher.@@leftblank5315
Hey, to connect Django higher than 3 to oracle you may need Oracle 19c or higher. If you want specifically use your Oracle 11g, you have to downgrade to Django 3.2 or 3.1 or 3.0. Hope this helps !!!
Any CI/CD vids coming? I need to know the best strategies to update the database of a production site. Most tuts teach how migrations works and usually just delete them all (even in sql table) when they make a mistake. However, what's the process of taking a prod site, making a whole bunch of migrations (eg. Running field by field indexing effects on speed test) then once the desired migration is found, how do you ensure that only one migration file is created with only the final desired migration set? I like this one-file migration process, but it might not be the best way. Any suggestions on how to optimize migration workflows so as to keep up rolling out new features.
@@bugbytes3923 my post was a bit sarcastic. It seems everyday there is a new framework. My point is, why would I learn yet another one, when FastAPI is well-established and is here to stay? Not to mention the author of Ninja is mixing politics into his work
@@leftblank5315 This is specifically for Django apps that might need APIs. If you have a Django app - better to keep your API in Django, make use of the models/ORM, and avoid having a separate FastAPI app just to expose an API over the same data model. Ninja gives an alternative over Django REST Framework for developers that are familiar with, or prefer, the Pydantic/FastAPI way of doing things. Not much new to learn tbh, if you're already a fan of FastAPI. But remember, there are many thousands more web apps running Django than FastAPI - so ninja gives an easy way of migrating towards these new approaches without ditching Django entirely. No idea about the politics of the author. He's Ukrainian I believe, so ....
I have learned django-ninja on this channel, but I can say this another level. Thank you so much man !
Thanks a lot man!!
Oh wow. I can't believe you're doing a vidoe on Django-ninja again. Thanks very much.
Thanks for the support!
Another banger, love the consistency of this channel
Thanks a lot!
Absolutely amazing video, I already fell in love with Django-Ninjas. Thank you so much!
Glad to hear that, thanks so much!
The only thing i miss in fastapi was django like orm, and this was perfect
Yes! The Django ORM cannot be beaten!
I really like django extension to populate the slug automatically. I normally created the prepopulated fields in the model admin, but this is much cleaner
It's a cool field, for sure!
Thank you! Can’t wait to see the continuation.
Thanks a lot!
This was beautiful to watch. I have always struggled with DRF; this will be my new go-to framework. It allows you to code as you picture it without restrictions or being overly opinionated.
In my opinion, this is more pythonic.
Thanks for watching! Agreed - more Pythonic and a nicer dev experience!
Thank you for turtorial - that's the best introduction into Django Ninja API so far I have seen
BugBytes' Videos are soo goood🤯🤯
Thanks so much!
super awesome man! Love always your approach. Looking forward to more videos on this series.. !
Thanks a lot man!
Amazing how much and how fast I have learned from your videos. I really like django-ninja, FastAPI with the Django ORM.
Thanks a lot Rob! And yeah, they're all great options.
Thank you! You are my fave Django teacher :)
That's amazing, thanks a lot!
Great! Video listed in the Django Ninja Docs means it is highly regarded by the author.
Thanks a lot for mentioning that, I didn't know!
Great video, here's hoping your django-ninja + next video has a tutorial for setting up authentication
Thank for the video. I have been waiting for a Django Ninja update video. Could you please do a video on django-extensions and Django-extras, I have seen you using it a few times
Thank you. For sure, django-extensions would be worth covering in more detail - thanks for the suggestion!
Thanks for sharing your experience.
While following the videos, I was wondering few things
I was wondering if you had any specific reasons for the followings otherwise approaches in the videos:
- the update endpoint: while creating the endpoint to update the device location, you 've used defined your endpoint with verbs. To properly convey with REST good practices defining the endpoints withs the resources name could improve the APi
- update request using post: maybe this was not the main focus, this could be improved by using patch or put methods.
I am just curious to pick your mind on it.
Once again, great and straight forward video ! Thanks
Thanks for the video. Excellently done.
Thanks a lot for the comment!
Can you do a video on authentication with Django-ninja please
I need authentication too.
Thank @bugbytes3923
Great tutorial.
Thanks a lot!
This is amazing work, keep up the great content.
Thanks a lot! Will try my best :D
Thank you for this; it's great work.
Thanks a lot!
Very cool and simple! When will be the next video with React?
Thank you! I think the follow-up video will be on Saturday!
If you make a video using a more "clean" approach(use-cases, repositories, services etc) to which django-ninja would perfectly fit, that would be a banger(imho)
I don't quite see the benefit of Ninja & Schemas over DRF & serializers. Am I missing something?
Following
My understanding from reading opinions on reddit and other sites - is that a lot of people find serializers/views in DRF quite confusing when you need to go beyond basic CRUD stuff. I think there's a bit of a learning curve to understand its nuances, but I personally love DRF, and of course many others do too.
I guess Ninja is just a different approach with less "magic" in the views.
Async async async!
being async, and easier to implement clean architecture.
Greate video. I don't know how to make the api calls more secure. Can you use the built-in users that always exist in a Django site? I would love to see this in the next video because security is needed even for basic API:s.
Maybe someone has a link to share how it is done.
Thanks for wideo, I needed this. One question: What diffrence is use django-extras/extensions slug vs djangos slug.field?
Great video! Thank you. This looks like a great alternative to DRF to add a REST api to an existing Django app, no?
Thanks a lot Keyton! That's exactly the use-case I think - if you have a Django app (or want to create one) that needs an API, then this is a nice alternative to DRF!
thank you!
Thanks a lot for watching!
it that possible , to DeviceCreateSchema derive from ModelSchema ?,
or can you explain please, when use schema and when use Modelschema ?
Can I create multiple apps to organize different contexts or use cases?
In the Schema for Location, you have 'id', 'name'. I get the name part, since it's defined on the model. I also get the id on the Device Schema, since that's also on the Device Model. I just don't get where the id for the locations is coming from, since location has only a single field called 'name'.
Thank you, BugBytes 🙌🏽
I believe the id field is added to all models by default. No need to be set up by the user. It’s necessary for the database to establish a unique primary key for each instance of the model
@@steogen, oooooh; and he explicitly sets up the id field for Device using uuid4 because he didn't want to have just a simple integer as the id for the devices, right? I get it now.
Thank you very much. You're a good person🤝🏾
@@theintjengineer that’s my understanding too. Glad I could help ☺️
In django dynamic addcontanct button using htmx how to get single submitt button to submit multiple forms to database
Thanks for the video! One question: There are _2_ "get_devices" methods, for devices and locations endpoints but it still works, I assume because of the decorator but the 2nd method doesn't override the first one?
Yeah, this was a mistake (corrected in the django-ninja-extra video) - the second function should be called "get_locations()". It must work due to the decorator wrapping the function!
thank you
Thanks for watching!
Trying to create Many-to-Many relationships, you'd have thought that you'd do it in a similar way, `list[str]` but when I try this, I always get an error, saying that fields are missing, that don'e even appear in the schema, or the model ....
Can i use it for existing django app?
Yes, definitely!
Is it suitable for industry standard?
Hello! I'm having difficulty connecting django 5.0 with the oracle 11g database. Do you know of any solution for this?
I've not connected Django to Oracle for a while, so not sure what the issue is - sorry! Do you have any errors/exceptions that you're seeing?
Please make sure the Instant Client is installed and in the path
The Instant Client is installed and in the correct path. I have a Laravel application using Instant Client and it works perfectly. I read that Django 5 only works with Oracle version 19 or higher.@@leftblank5315
Hey, to connect Django higher than 3 to oracle you may need Oracle 19c or higher. If you want specifically use your Oracle 11g, you have to downgrade to Django 3.2 or 3.1 or 3.0. Hope this helps !!!
Thank you.@@seydinaoumarsamabaly1806
❣
Now No need of Django Rest Framework?
Thank you for promoting Ukrainian products!
Thanks a lot! :)
Any CI/CD vids coming? I need to know the best strategies to update the database of a production site.
Most tuts teach how migrations works and usually just delete them all (even in sql table) when they make a mistake. However, what's the process of taking a prod site, making a whole bunch of migrations (eg. Running field by field indexing effects on speed test) then once the desired migration is found, how do you ensure that only one migration file is created with only the final desired migration set?
I like this one-file migration process, but it might not be the best way.
Any suggestions on how to optimize migration workflows so as to keep up rolling out new features.
I guess FastAPI is no longer modern?
FastAPI is what I'd think of when talking about "modern" Python API frameworks - so yes, I'd say it is!
Django-Ninja brings that approach to Django.
@@bugbytes3923 my post was a bit sarcastic. It seems everyday there is a new framework. My point is, why would I learn yet another one, when FastAPI is well-established and is here to stay? Not to mention the author of Ninja is mixing politics into his work
@@leftblank5315 This is specifically for Django apps that might need APIs. If you have a Django app - better to keep your API in Django, make use of the models/ORM, and avoid having a separate FastAPI app just to expose an API over the same data model.
Ninja gives an alternative over Django REST Framework for developers that are familiar with, or prefer, the Pydantic/FastAPI way of doing things. Not much new to learn tbh, if you're already a fan of FastAPI. But remember, there are many thousands more web apps running Django than FastAPI - so ninja gives an easy way of migrating towards these new approaches without ditching Django entirely.
No idea about the politics of the author. He's Ukrainian I believe, so ....
@@bugbytes3923 it makes sense in the context of Django. I've used DRF for years.