| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- # Model Fields
- # Note: Optional arguments are using defaults that match what Django will use
- # as a default, e.g. with max_length fields. Doing this as a form of self
- # documentation and to make it easy to know whether you should override the
- # default or not.
- # Note: Optional arguments that are booleans will use the opposite since you
- # can either not specify them, or override them, e.g. auto_now_add=False.
- snippet auto
- ${1:FIELDNAME} = models.AutoField(${2})
- snippet bool
- ${1:FIELDNAME} = models.BooleanField(${2:default=True})
- snippet char
- ${1:FIELDNAME} = models.CharField(max_length=${2}${3:, blank=True})
- snippet comma
- ${1:FIELDNAME} = models.CommaSeparatedIntegerField(max_length=${2}${3:, blank=True})
- snippet date
- ${1:FIELDNAME} = models.DateField(${2:auto_now_add=True, auto_now=True}${3:, blank=True, null=True})
- snippet datetime
- ${1:FIELDNAME} = models.DateTimeField(${2:auto_now_add=True, auto_now=True}${3:, blank=True, null=True})
- snippet decimal
- ${1:FIELDNAME} = models.DecimalField(max_digits=${2}, decimal_places=${3})
- snippet email
- ${1:FIELDNAME} = models.EmailField(max_length=${2:75}${3:, blank=True})
- snippet file
- ${1:FIELDNAME} = models.FileField(upload_to=${2:path/for/upload}${3:, max_length=100})
- snippet filepath
- ${1:FIELDNAME} = models.FilePathField(path=${2:"/abs/path/to/dir"}${3:, max_length=100}${4:, match="*.ext"}${5:, recursive=True}${6:, blank=True, })
- snippet float
- ${1:FIELDNAME} = models.FloatField(${2})
- snippet image
- ${1:FIELDNAME} = models.ImageField(upload_to=${2:path/for/upload}${3:, height_field=height, width_field=width}${4:, max_length=100})
- snippet int
- ${1:FIELDNAME} = models.IntegerField(${2})
- snippet ip
- ${1:FIELDNAME} = models.IPAddressField(${2})
- snippet nullbool
- ${1:FIELDNAME} = models.NullBooleanField(${2})
- snippet posint
- ${1:FIELDNAME} = models.PositiveIntegerField(${2})
- snippet possmallint
- ${1:FIELDNAME} = models.PositiveSmallIntegerField(${2})
- snippet slug
- ${1:FIELDNAME} = models.SlugField(max_length=${2:50}${3:, blank=True})
- snippet smallint
- ${1:FIELDNAME} = models.SmallIntegerField(${2})
- snippet text
- ${1:FIELDNAME} = models.TextField(${2:blank=True})
- snippet time
- ${1:FIELDNAME} = models.TimeField(${2:auto_now_add=True, auto_now=True}${3:, blank=True, null=True})
- snippet url
- ${1:FIELDNAME} = models.URLField(${2:verify_exists=False}${3:, max_length=200}${4:, blank=True})
- snippet xml
- ${1:FIELDNAME} = models.XMLField(schema_path=${2:None}${3:, blank=True})
- # Relational Fields
- snippet fk
- ${1:FIELDNAME} = models.ForeignKey(${2:OtherModel}${3:, related_name=''}${4:, limit_choices_to=}${5:, to_field=''})
- snippet m2m
- ${1:FIELDNAME} = models.ManyToManyField(${2:OtherModel}${3:, related_name=''}${4:, limit_choices_to=}${5:, symmetrical=False}${6:, through=''}${7:, db_table=''})
- snippet o2o
- ${1:FIELDNAME} = models.OneToOneField(${2:OtherModel}${3:, parent_link=True}${4:, related_name=''}${5:, limit_choices_to=}${6:, to_field=''})
- # Code Skeletons
- snippet form
- class ${1:FormName}(forms.Form):
- """${2:docstring}"""
- ${3}
- snippet model
- class ${1:ModelName}(models.Model):
- """${2:docstring}"""
- ${3}
-
- class Meta:
- ${4}
-
- def __unicode__(self):
- ${5}
-
- def save(self, force_insert=False, force_update=False):
- ${6}
-
- @models.permalink
- def get_absolute_url(self):
- return ('${7:view_or_url_name}' ${8})
- snippet modeladmin
- class ${1:ModelName}Admin(admin.ModelAdmin):
- ${2}
-
- admin.site.register($1, $1Admin)
-
- snippet tabularinline
- class ${1:ModelName}Inline(admin.TabularInline):
- model = $1
- snippet stackedinline
- class ${1:ModelName}Inline(admin.StackedInline):
- model = $1
- snippet r2r
- return render_to_response('${1:template.html}', {
- ${2}
- }${3:, context_instance=RequestContext(request)}
- )
|