# Django Forms (Django) > Form classes, ModelForm, validation, custom validators, form widgets, formsets, crispy forms - 22 interview questions - Mid-Level - [Interview Questions: Django](https://sharpskill.dev/en/technologies/django/interview-questions.md) ## 1. Which base class should be used to create a simple Django form (not tied to a model)? **Answer** The forms.Form class is the base class for creating Django forms independent of any model. It allows manually defining each field with its type and validators. ModelForm is only used when binding the form directly to an existing Django model. ## 2. How to access validated data from a Django form after calling is_valid()? **Answer** The cleaned_data attribute is a dictionary containing form data after validation and cleaning. It is only available after a successful call to is_valid(). Values are converted to appropriate Python types (for example, a date string becomes a datetime.date object). ## 3. In a ModelForm, which Meta class attribute specifies the model to use? **Answer** The model attribute in a ModelForm's Meta class defines the Django model the form will be based on. Django automatically generates form fields corresponding to the specified model's fields. The fields or exclude attributes then control which fields to include. ## 19 more questions available - Which method validates a specific field in a Django form? - Which method should be used to validate multiple interdependent fields in a Django form? Sign up for free: https://sharpskill.dev/en/login ## Other Django interview topics - [Python Basics](https://sharpskill.dev/en/technologies/django/interview-questions/python-basics.md): 25 questions, Junior - [Python OOP](https://sharpskill.dev/en/technologies/django/interview-questions/python-oop.md): 20 questions, Junior - [Django Fundamentals](https://sharpskill.dev/en/technologies/django/interview-questions/django-fundamentals.md): 20 questions, Junior - [Django Models - Basics](https://sharpskill.dev/en/technologies/django/interview-questions/django-models-basics.md): 22 questions, Junior - [Django Views](https://sharpskill.dev/en/technologies/django/interview-questions/django-views.md): 20 questions, Junior - [Django Templates](https://sharpskill.dev/en/technologies/django/interview-questions/django-templates.md): 18 questions, Junior - [Advanced QuerySets](https://sharpskill.dev/en/technologies/django/interview-questions/django-querysets.md): 25 questions, Mid-Level - [Django Authentication](https://sharpskill.dev/en/technologies/django/interview-questions/django-authentication.md): 22 questions, Mid-Level - [Django Middleware](https://sharpskill.dev/en/technologies/django/interview-questions/django-middleware.md): 18 questions, Mid-Level - [Django Admin](https://sharpskill.dev/en/technologies/django/interview-questions/django-admin.md): 20 questions, Mid-Level - [Django REST Framework](https://sharpskill.dev/en/technologies/django/interview-questions/django-rest-framework.md): 30 questions, Mid-Level - [Django Signals](https://sharpskill.dev/en/technologies/django/interview-questions/django-signals.md): 18 questions, Mid-Level - [File Upload](https://sharpskill.dev/en/technologies/django/interview-questions/django-file-upload.md): 20 questions, Mid-Level - [Django Caching](https://sharpskill.dev/en/technologies/django/interview-questions/django-caching.md): 20 questions, Mid-Level - [Django Sessions](https://sharpskill.dev/en/technologies/django/interview-questions/django-sessions.md): 18 questions, Mid-Level - [Django Email](https://sharpskill.dev/en/technologies/django/interview-questions/django-email.md): 18 questions, Mid-Level - [Django Testing](https://sharpskill.dev/en/technologies/django/interview-questions/django-testing.md): 22 questions, Mid-Level - [Django Security](https://sharpskill.dev/en/technologies/django/interview-questions/django-security.md): 22 questions, Mid-Level - [Django Deployment](https://sharpskill.dev/en/technologies/django/interview-questions/django-deployment.md): 24 questions, Mid-Level - [Advanced Django ORM](https://sharpskill.dev/en/technologies/django/interview-questions/django-orm-advanced.md): 28 questions, Senior - [Django Performance](https://sharpskill.dev/en/technologies/django/interview-questions/django-performance.md): 24 questions, Senior - [Django & Celery](https://sharpskill.dev/en/technologies/django/interview-questions/django-celery.md): 22 questions, Senior - [Django Channels](https://sharpskill.dev/en/technologies/django/interview-questions/django-channels.md): 24 questions, Senior - [Django & GraphQL](https://sharpskill.dev/en/technologies/django/interview-questions/django-graphql.md): 24 questions, Senior - [Django & Docker](https://sharpskill.dev/en/technologies/django/interview-questions/django-docker.md): 20 questions, Senior - [Django in Microservices Ecosystem](https://sharpskill.dev/en/technologies/django/interview-questions/django-microservices.md): 24 questions, Senior - [Custom Django Commands](https://sharpskill.dev/en/technologies/django/interview-questions/django-custom-commands.md): 18 questions, Senior - [Django Internationalization](https://sharpskill.dev/en/technologies/django/interview-questions/django-internationalization.md): 20 questions, Senior - [Django Design Patterns](https://sharpskill.dev/en/technologies/django/interview-questions/django-design-patterns.md): 24 questions, Senior - [Django Async & ASGI](https://sharpskill.dev/en/technologies/django/interview-questions/django-async-asgi.md): 26 questions, Senior - [Settings & Production Configuration](https://sharpskill.dev/en/technologies/django/interview-questions/django-settings-configuration.md): 22 questions, Senior - [Observability & Monitoring](https://sharpskill.dev/en/technologies/django/interview-questions/django-observability.md): 24 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/django/interview-questions/django-forms