Django Snippets for VS Code
⚠️ Disclaimer ⚠️
This is not the official Visual Studio Code extension. This is a community-created extension that has collection of useful code snippets for Django development in Visual Studio Code.
Features
This extension provides snippets for common Django patterns and boilerplate code, including:
- Django Models and Model Fields
- Model Meta Options and Managers
- Model Signals
- Class-based Views and Mixins
- Forms and Form Fields
- Form Validation
- URL Patterns
- Template Tags and Filters
- Context Processors
- Middleware
- Management Commands
- Django REST Framework Views and Serializers
- Admin Configuration
- Settings
- Test Cases
Snippets
Here are the available snippets and their prefixes:
Prefix |
Description |
djmodel |
Django model class with common fields |
djfield |
Django model field with common options |
djmeta |
Django model Meta class options |
djmanager |
Django custom model manager |
djsignal |
Django model signal handler |
djview |
Django class-based view |
djmixin |
Django class-based view mixin |
djform |
Django form class |
djformfield |
Django form field with common options |
djformvalid |
Django form validation methods |
djurl |
Django URL patterns |
djtemplate |
Django template structure |
djfilter |
Django custom template filter |
djtag |
Django custom template tag |
djcontext |
Django context processor |
djmiddleware |
Django custom middleware |
djcommand |
Django custom management command |
djadmin |
Django admin configuration |
djsettings |
Django settings configuration |
djtest |
Django test class |
djrestview |
Django REST Framework viewset |
djrestserializer |
Django REST Framework serializer |
Usage
- Type the prefix in a Python or HTML file
- Press
Tab
or Enter
to insert the snippet
- Use
Tab
to move between the placeholders
Example
Type djmodel
in a Python file and press Tab
to get:
from django.db import models
class ModelName(models.Model):
field_name = models.CharField(max_length=100)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
class Meta:
verbose_name = 'Model Name'
verbose_name_plural = 'Model Names'
def __str__(self):
return self.field_name
def get_absolute_url(self):
return reverse('model-detail', kwargs={'pk': self.pk})
Requirements
- Visual Studio Code 1.60.0 or higher
- Python extension for VS Code (recommended)
Extension Settings
This extension contributes the following settings:
- No additional settings required
Known Issues
None at the moment.
Release Notes
0.1.0
Initial release of Django Snippets with basic snippets for:
- Models
- Views
- Forms
- URLs
- Templates
- Admin
- Settings
- Tests
Contributing
We welcome your feedback and suggestions to improve these snippets.
License
This project is licensed under the MIT License - see the LICENSE file for details.