Skip to content

Commit cfea598

Browse files
authored
Add long overdue documentation about features.
1 parent a80ae35 commit cfea598

File tree

1 file changed

+184
-0
lines changed

1 file changed

+184
-0
lines changed

README.md

+184
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,190 @@ $ apm install atom-django
1010

1111
Or Settings ➔ Packages ➔ Search for `django`
1212

13+
## Features
14+
15+
### Snippets
16+
17+
This plugin features several snippets to help you write boilerplate code faster, mostly for writing out models' Fields. These snippets also have preset insertion points that let you tab between various parts of the snippet that you likely want to change. These are noted in the snippets below as `$1`, `$2`, and so on. Occasionally these have default values inside them such as `${1:default value}`.
18+
19+
#### Basic model skeleton
20+
21+
`model` becomes:
22+
23+
class ${1:Modelname}(models.Model):
24+
"""${2:($1 description)}"""
25+
$0
26+
def __unicode__(self):
27+
return u"$1"
28+
29+
#### `AutoField`
30+
31+
`auto` becomes:
32+
33+
`${1:FIELDNAME} = models.AutoField()`
34+
35+
#### `BooleanField`
36+
37+
`boolean` becomes:
38+
39+
`${1:FIELDNAME} = models.BooleanField(${2:default=True})`
40+
41+
#### `CharField`
42+
43+
`char` becomes:
44+
45+
`${1:FIELDNAME} = models.CharField(${2:blank=True}, max_length=${3:100})`
46+
47+
#### `CommaSeparatedIntegerField`
48+
49+
`commaseparatedinteger` becomes:
50+
51+
`${1:FIELDNAME} = models.CommaSeparatedIntegerField(max_length=$2)`
52+
53+
#### `DateField`
54+
55+
`date` becomes:
56+
57+
`${1:FIELDNAME} = models.DateField(${2:default=datetime.datetime.today})`
58+
59+
#### `DateTimeField`
60+
61+
`datetime` becomes:
62+
63+
`${1:FIELDNAME} = models.DateTimeField(${2:blank=True}${3:, default=datetime.datetime.now})`
64+
65+
#### `DecimalField`
66+
67+
`decimal` becomes:
68+
69+
`${1:FIELDNAME} = models.DecimalField(max_digits=$2, decimal_places=$3)`
70+
71+
#### `EmailField`
72+
73+
`email` becomes:
74+
75+
`${1:FIELDNAME} = models.EmailField()`
76+
77+
#### `FileField`
78+
79+
`file` becomes:
80+
81+
`${1:FIELDNAME} = models.FileField(upload_to=${1:/path/for/upload})`
82+
83+
#### `FilePathField`
84+
85+
`filepath` becomes:
86+
87+
`${1:FIELDNAME} = models.FilePathField(path="${1:/location/of/choices}"${2:, match="${3:regex}"}${4:, recursive=True})`
88+
89+
#### `FloatField`
90+
91+
`float` becomes:
92+
93+
`${1:FIELDNAME} = models.FloatField()`
94+
95+
#### `ForeignKey`
96+
97+
`fk` becomes:
98+
99+
`${1:FIELDNAME} = models.ForeignKey(${2:RELATED_MODEL})`
100+
101+
#### `IPAddressField`
102+
103+
`ipaddress` becomes:
104+
105+
`${1:FIELDNAME} = models.IPAddressField(${2:blank=True})`
106+
107+
#### `ImageField`
108+
109+
`image` becomes:
110+
111+
`${1:FIELDNAME} = models.ImageField(upload_to="${2:/dir/path}"${3:, height_field=$4}${5:, width_field=$6})`
112+
113+
#### `IntegerField`
114+
115+
`integer` becomes:
116+
117+
`${1:FIELDNAME} = models.IntegerField(${2:blank=True, null=True})`
118+
119+
#### `ManyToManyField`
120+
121+
`manytomany` becomes:
122+
123+
`${1:FIELDNAME} = models.ManyToManyField(${2:RELATED_MODEL})`
124+
125+
#### `NullBooleanField`
126+
127+
`nullboolean` becomes:
128+
129+
`${1:FIELDNAME} = models.NullBooleanField(${2:default=True})`
130+
131+
#### `PhoneNumberField`
132+
133+
`phonenumber` becomes:
134+
135+
`${1:FIELDNAME} = models.PhoneNumberField(${2:blank=True})`
136+
137+
#### `PositiveIntegerField`
138+
139+
`positiveinteger` becomes:
140+
141+
`${1:FIELDNAME} = models.PositiveIntegerField(${2:blank=True, null=True})`
142+
143+
#### `PositiveSmallIntegerField`
144+
145+
`positivesmallinteger` becomes:
146+
147+
`${1:FIELDNAME} = models.PositiveSmallIntegerField(${2:blank=True, null=True})`
148+
149+
#### `SlugField`
150+
151+
`slug` becomes:
152+
153+
`${1:slug} = models.SlugField()`
154+
155+
#### `SmallIntegerField`
156+
157+
`smallinteger` becomes:
158+
159+
`${1:FIELDNAME} = models.SmallIntegerField(${2:blank=True, null=True})`
160+
161+
#### `TextField`
162+
163+
`text` becomes:
164+
165+
`${1:FIELDNAME} = models.TextField(${2:blank=True})`
166+
167+
#### `TimeField`
168+
169+
`time` becomes:
170+
171+
`${1:FIELDNAME} = models.TimeField(${2:blank=True})`
172+
173+
#### `URLField`
174+
175+
`url` becomes:
176+
177+
`${1:FIELDNAME} = models.URLField(${2:blank=True})`
178+
179+
#### `USStateField`
180+
181+
`usstate` becomes:
182+
183+
`${1:FIELDNAME} = models.USStateField(${2:blank=True})`
184+
185+
#### `XMLField`
186+
187+
`xml` becomes:
188+
189+
`${1:FIELDNAME} = models.XMLField(schema_path=${2:/path/to/RelaxNG}${3:, blank=True})`
190+
191+
#### `send_mail`
192+
193+
`sendmail` becomes:
194+
195+
mail.send_mail("${1:Subject}", "${2:Message}", "${3:[email protected]}", ${4:["[email protected]"]}${5:, fail_silently=True})
196+
13197
## Release Notes
14198

15199
### 0.3.1

0 commit comments

Comments
 (0)