mirror of
https://github.com/amix/vimrc
synced 2024-12-14 14:12:33 +00:00
108 lines
3.7 KiB
Text
108 lines
3.7 KiB
Text
# 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(${0})
|
|
snippet bool
|
|
${1:FIELDNAME} = models.BooleanField(${0:default=True})
|
|
snippet char
|
|
${1:FIELDNAME} = models.CharField(max_length=${2}${0:, blank=True})
|
|
snippet comma
|
|
${1:FIELDNAME} = models.CommaSeparatedIntegerField(max_length=${2}${0:, blank=True})
|
|
snippet date
|
|
${1:FIELDNAME} = models.DateField(${2:auto_now_add=True, auto_now=True}${0:, blank=True, null=True})
|
|
snippet datetime
|
|
${1:FIELDNAME} = models.DateTimeField(${2:auto_now_add=True, auto_now=True}${0:, blank=True, null=True})
|
|
snippet decimal
|
|
${1:FIELDNAME} = models.DecimalField(max_digits=${2}, decimal_places=${0})
|
|
snippet email
|
|
${1:FIELDNAME} = models.EmailField(max_length=${2:75}${0:, blank=True})
|
|
snippet file
|
|
${1:FIELDNAME} = models.FileField(upload_to=${2:path/for/upload}${0:, 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}${0:, blank=True, })
|
|
snippet float
|
|
${1:FIELDNAME} = models.FloatField(${0})
|
|
snippet image
|
|
${1:FIELDNAME} = models.ImageField(upload_to=${2:path/for/upload}${3:, height_field=height, width_field=width}${0:, max_length=100})
|
|
snippet int
|
|
${1:FIELDNAME} = models.IntegerField(${0})
|
|
snippet ip
|
|
${1:FIELDNAME} = models.IPAddressField(${0})
|
|
snippet nullbool
|
|
${1:FIELDNAME} = models.NullBooleanField(${0})
|
|
snippet posint
|
|
${1:FIELDNAME} = models.PositiveIntegerField(${0})
|
|
snippet possmallint
|
|
${1:FIELDNAME} = models.PositiveSmallIntegerField(${0})
|
|
snippet slug
|
|
${1:FIELDNAME} = models.SlugField(max_length=${2:50}${0:, blank=True})
|
|
snippet smallint
|
|
${1:FIELDNAME} = models.SmallIntegerField(${0})
|
|
snippet text
|
|
${1:FIELDNAME} = models.TextField(${0:blank=True})
|
|
snippet time
|
|
${1:FIELDNAME} = models.TimeField(${2:auto_now_add=True, auto_now=True}${0:, blank=True, null=True})
|
|
snippet url
|
|
${1:FIELDNAME} = models.URLField(${2:verify_exists=False}${3:, max_length=200}${0:, blank=True})
|
|
snippet xml
|
|
${1:FIELDNAME} = models.XMLField(schema_path=${2:None}${0:, blank=True})
|
|
# Relational Fields
|
|
snippet fk
|
|
${1:FIELDNAME} = models.ForeignKey(${2:OtherModel}${3:, related_name=''}${4:, limit_choices_to=}${0:, to_field=''})
|
|
snippet m2m
|
|
${1:FIELDNAME} = models.ManyToManyField(${2:OtherModel}${3:, related_name=''}${4:, limit_choices_to=}${5:, symmetrical=False}${6:, through=''}${0:, db_table=''})
|
|
snippet o2o
|
|
${1:FIELDNAME} = models.OneToOneField(${2:OtherModel}${3:, parent_link=True}${4:, related_name=''}${5:, limit_choices_to=}${0:, to_field=''})
|
|
|
|
# Code Skeletons
|
|
|
|
snippet form
|
|
class ${1:FormName}(forms.Form):
|
|
"""${2:docstring}"""
|
|
${0}
|
|
|
|
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}' ${0})
|
|
|
|
snippet modeladmin
|
|
class ${1:ModelName}Admin(admin.ModelAdmin):
|
|
${0}
|
|
|
|
admin.site.register($1, $1Admin)
|
|
|
|
snippet tabularinline
|
|
class ${0:ModelName}Inline(admin.TabularInline):
|
|
model = $1
|
|
|
|
snippet stackedinline
|
|
class ${0:ModelName}Inline(admin.StackedInline):
|
|
model = $1
|
|
|
|
snippet r2r
|
|
return render_to_response('${1:template.html}', {
|
|
${2}
|
|
}${0:, context_instance=RequestContext(request)}
|
|
)
|