How to write Django Model Forms in just one line?
one liner model forms in Django

Till this point of time, you have been creating form for your existing models in Django using ModelForm class:
from django import forms
class MyModelForm(forms.ModelForm):
# specify the name of model to use
class Meta:
model = MyModel
fields = "__all__"
But there is a much simpler way to generate a form in Django with just one line of code.
You can create forms from a given model using the standalone function modelform_factory(), instead of using a class definition.
This may be more convenient if you do not have many customizations to make:
from django.forms import modelform_factory
MyModelForm = modelform_factory(MyModel, fields="__all__")
You are not limited to just that, you can define the fields to choose as well:
from django.forms import modelform_factory
MyModelForm = modelform_factory(MyModel, fields=("email", "username"))
Follow Us for more daily crispy blogs like this.
Social Links
- LinkedIn: https://www.linkedin.com/in/mnamegaurav/
- YouTube: https://www.youtube.com/c/devjunction
- Website: https://gaurav.devjunction.in/
- GitHub: https://github.com/mnamegaurav
- Instagram: https://www.instagram.com/mnamegaurav/
- Twitter: https://twitter.com/mnamegaurav
About the author
Experienced Full Stack Software Engineer with 4+ Years of experience, proficient in Django and React, with expertise in Python, JavaScript and Typescript, also an author of Dev.Junction Blogs & YouTube Channel, expert in Python/Django, Rest Framework, ReactJS/NextJS and TypeScript, currently based in Pune, India.
Comments
Join the discussionNo comments yet. Be the first to comment.






