Skip to content

Instantly share code, notes, and snippets.

@k1000
Created April 4, 2010 09:43
Show Gist options
  • Save k1000/355280 to your computer and use it in GitHub Desktop.
Save k1000/355280 to your computer and use it in GitHub Desktop.
kate django model snippet
<snippets license="BSD" filetypes="Python" authors="Kamil Selwa" name="Django1.2 snippets based on Texmate http://svn.textmate.org/trunk/Bundles/Python%20Django.tmbundle/Snippets/">
<item>
<displayprefix></displayprefix>
<match>m2m</match>
<displaypostfix></displaypostfix>
<displayarguments>FIELDNAME</displayarguments>
<fillin>${1:FIELDNAME} = models.ManyToManyField(${RELATED_MODEL}, related_name=${RELATED_NAME}, ${limit_choices_to={'pub_date__lte': datetime.now}} )</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>auto</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.AutoField()</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>boolean</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.BooleanField(${default=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>char</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.CharField(${blank=True}, max_length=${3:100})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>commaseparatedinteger</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.CommaSeparatedIntegerField(max_length=${2})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>date</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.DateField(${2:default=datetime.datetime.today})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>integer</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.IntegerField(${2:blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>decimal</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.DecimalField(max_digits=${2}, decimal_places=${3})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>biginteger</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.BigIntegerField(max_digits=${2}, decimal_places=${3})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>datetime</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.DateTimeField(${2:blank=True},${default=datetime.datetime.now})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>email</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.EmailField()</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>file</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.FileField(upload_to=${1:/path/for/upload}, )</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>filepath</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.FilePathField(path="${1:/location/of/choices}"${2:, match="${3:regex}"}${4:, recursive=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>float</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.FloatField()</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>fk</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.ForeignKey(${2:RELATED_MODEL},related_name=${3:RELATED_NAME})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>ipaddress</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.IPAddressField(${2:blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>image</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.ImageField(upload_to="${2:/dir/path}"${3:, height_field=$4}${5:, width_field=$6})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>121</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.OneToOneField(${FOREIGN_FIELD}, parent_link=${True},})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>model</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>class ${1:Modelname}(models.Model):
"""${2:($1 description)}"""
$0
class Meta:
list_display = ('',)
search_fields = ('',)
def __unicode__(self):
return u"$1"</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>nullboolean</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.NullBooleanField(${2:default=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>phonenumber</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.PhoneNumberField(${2:blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>positiveinteger</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.PositiveIntegerField(${2:blank=True, null=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>positivesmallinteger</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.PositiveSmallIntegerField(${2:blank=True, null=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>slug</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:slug} = models.SlugField(${2:prepopulate_from=("$3",$4)})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>smallinteger</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.SmallIntegerField(${2:blank=True, null=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>text</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.TextField(${2:blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>time</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.TimeField(${2:blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>url</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.URLField(${2:blank=True}, verify_exists=${3:True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>usstate</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.USStateField(${2:blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>xml</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>${1:FIELDNAME} = models.XMLField(schema_path=${2:/path/to/RelaxNG}${3:, blank=True})</fillin>
</item>
<item>
<displayprefix></displayprefix>
<match>sendmail</match>
<displaypostfix></displaypostfix>
<displayarguments></displayarguments>
<fillin>mail.send_mail("${1:Subject}", "${2:Message}", "${3:from@example.com}", ${4:["to@example.com"]}${5:, fail_silently=True})</fillin>
</item>
</snippets>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment