Django 对 Sublime Text 的支持
安装
使用 Package Control
- 打开命令面板(
ctrl+shift+P
或 cmd+shift+P
)。
- 输入“安装包”并按回车。
- 输入“迪亚内罗”并按回车。
如果使用 Sublime 3 或更早版本,请使用 HTML (Django) ST3
。
URL 自动完成
迪亚内罗具有 URL 自动完成功能。通过保持所有命名的 URL 的最新索引,并使用 tab 完成(自动补全)来快速查找可用的视图名称,它可以消除在 urls.py
中追踪 URL 名称所需的所有时间。
要使用此功能:* django 项目必须保存为 sublime-project。* ./manage.py
需要位于项目的其中一个文件夹中。* 在项目设置中必须设置 python_interpreter
。
索引在打开项目时加载,并在保存包含单词 urlpatterns
的任何 Python 文件时刷新。
可以在任何 {% url %}
模板标记或 reverse(
方法中触发自动完成。如果有可用的关键字段,将显示相应的关键字段。
Django 模板的片段
缩写 |
标记 |
autoescape |
{% autoescape %} {% autoescape %} |
block |
{% block %} {% endblock %} |
comment |
{% comment %} {% endcomment %} |
csrf |
{% csrf_token %} |
cycle |
{% cycle %} |
debug |
{% debug %} |
ext |
{% extends "" %} |
extends |
{% extends "" %} |
filter |
{% filter %} {% endfilter %} |
firstof |
{% firstof %} |
for |
{% for in %} {% endfor %} |
fore |
{% for in %} {% empty %} {% endfor %} |
if |
{% if %} {% endif %} |
ifchanged |
{% ifchanged %} {% endifchanged %} |
ife |
{% if %} {% else %} {% endif %} |
ifelse |
{% if %} {% else %} {% endif %} |
ifeq |
{% ifequal %} {% endifequal %} |
ifequal |
{% ifequal %} {% endifequal %} |
ifnotequal |
{% ifnotequal %} {% endifnotequal %} |
inc |
{% include %} |
include |
{% include %} |
load |
{% load %} |
now |
{% now "" %} |
regroup |
{% regroup by as %} |
spaceless |
{% spaceless %} {% endspaceless %} |
ssi |
{% ssi %} |
static |
{% static %} |
templatetag |
{% templatetag %} |
url |
{% url %} |
aurl |
<a href="{% url '' %}></a> |
verbatim |
{% verbatim %} {% endverbatim %} |
widthratio |
{% widthratio %} |
with |
{% with as %} {% endwith %} |
trans |
{% trans %} |
blocktrans |
{% blocktrans with as %} {% endblocktrans %} |
还有一些非官方的内容
缩写 |
标记 |
super |
{{ block.super }} |
extrahead |
{% block extrahead %} {% endblock extrahead %} |
extrastyle |
{% block extrastyle %} {% endblock extrastyle %} |
var |
{{ }} |
tag |
{% %} |
staticu |
{{ STATIC_URL }} |
media |
{{ MEDIA_URL }} |
为Django模型字段提供的代码片段
缩写 |
标记 |
mauto |
models.AutoField() |
mbauto |
models.BigAutoField() |
mbigint |
models.BigIntegerField() |
mbin |
models.BinaryField() |
mbool |
models.BooleanField() |
mchar |
models.CharField() |
mdate |
models.DateField() |
mdatetime |
models.DateTimeField() |
mdecimal |
models.DecimalField() |
mduration |
models.DurationField() |
memail |
models.EmailField() |
mfile |
models.FileField() |
mfilepath |
models.FilePathField() |
mfloat |
models.FloatField() |
mgip |
models.GenericIPAddressField() |
mimg |
models.ImageField() |
mint |
models.IntegerField() |
mjson |
models.JSONField() |
mnullbool |
models.BooleanField(null=True) |
mphone |
models.PhoneNumberField() |
mposint |
models.PositiveIntegerField() |
mposbigint |
models.PositiveBigIntegerField() |
mpossmallint |
models.PositiveSmallIntegerField() |
msauto |
models.SmallAutoField() |
mslug |
models.SlugField() |
msmallint |
models.SmallIntegerField() |
mtext |
models.TextField() |
mtime |
models.TimeField() |
murl |
models.URLField() |
musstate |
models.USStateField() |
muuid |
models.UUIDField() |
fk |
models.ForeignKey() |
m2m |
models.ManyToManyField() |
o2o |
models.OneToOneField() |
为Django表单字段提供的代码片段
缩写 |
代码 |
fbool |
forms.BooleanField() |
fchar |
forms.CharField() |
fchoice |
forms.ChoiceField() |
fcombo |
forms.ComboField() |
fdate |
forms.DateField() |
fdatetime |
forms.DateTime() |
fdecimal |
forms.DecimalField() |
fduration |
forms.DurationField() |
femail |
forms.EmailField() |
ffile |
forms.FileField() |
ffilepath |
forms.FilePathField() |
ffloat |
forms.FloatField() |
fgip |
forms.GenericIPAddressField() |
fimg |
forms.ImageField() |
fint |
forms.IntegerField() |
fip |
forms.IPAddressField() |
fmochoice |
forms.ModelChoiceField() |
fmomuchoice |
forms.ModelMultipleChoiceField() |
fmuchoice |
forms.MultipleChoiceField() |
fmuval |
forms.MultipleValueField() |
fnullbool |
forms.NullBooleanField() |
fregex |
forms.RegexField() |
fslug |
forms.SlugField() |
fsdatetime |
forms.SplitDateTime() |
ftime |
forms.TimeField() |
ftchoice |
forms.TypedChoiceField() |
ftmuchoice |
forms.TypedMultipleChoiceField() |
furl |
forms.URLField() |
fuuid |
forms.UUIDField() |
为Django视图提供的代码片段
缩写 |
代码 |
view |
基于函数的视图 |
createview |
通用创建视图 |
updateview |
通用更新视图 |
deleteview |
通用删除视图 |
detailview |
通用详细信息视图 |
listview |
通用列表视图 |
templateview |
通用模板视图 |
adminview |
通用管理视图 |
tabularinline |
表格内嵌视图 |
堆叠内嵌 |
堆叠内嵌视图 |
分发 |
CBV的分发方法 |
get_context_data |
CBV的get_context_data方法 |
Django模型片段
缩写 |
代码 |
模型 |
简单模型类 |
Model_full |
完整的模型类(含待办事项) |
Python片段
缩写 |
代码 |
init |
__init__(self, *args, **kwargs) |
pdb |
import pdb ; pdb.set_trace() |
ipdb |
import ipdb ; ipdb.set_trace() |
npdb |
from nose.tools import set_trace; set_trace() |
traceback |
import traceback; traceback.print_exc(); |
utfc |
coding: utf-8 |
补全
缩写 |
null |
空白 |
选择项 |
数据库列 |
数据库索引 |
数据库表空间 |
默认值 |
相关名称 |
可编辑 |
错误消息 |
帮助消息 |
主键 |
唯一 |
组合唯一 |
按日期唯一 |
按月份唯一 |
按年份唯一 |
描述性名称 |
复数描述性名称 |
验证器 |
auto_now_add |
auto_now |
必需 |
标签 |
初始 |
小部件 |
本地化 |
返回 |
RequestContext |
上下文实例 |
render_to_response |
渲染 |
重定向 |
get_object_or_404 |
get_list_or_404 |