django基础
django生成数据库常用命令
python manage.py makemigrations
python manage.py migrate
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbname', 'USER': 'root', 'PASSWORD': 'xxx', 'HOST': '', 'PORT': '', } } __init__.py文件中 import pymysql pymysql.install_as_MySQLdb()
STATICFILES_DIRS = ( os.path.join(BASE_DIR,'static'), )
路由系统
正则路由
url(r
'^index/(\d*)'
, views.index),
url(r
'^manage/(?P<name>\w*)/(?P<id>\d*)'
, views.manage),
额外添加参数
url(r
'^manage/(?P<name>\w*)'
, views.manage,{
'id'
:
333
}),
映射名称
url(r
'^index/(\d*)'
, views.index, name
=
'h2'
),
根据app对路由规则进行分类
url(r'^web/'
,include('web.urls'
)),
模板中使用生成URL {% url 'h2' 2012 %}
函数中使用生成URL reverse('h2', args=(2012,)) 路径:django.urls.reverse
{{ item }} {% for item in item_list %} <a>{{ item }}</a> {% endfor %} forloop.counter forloop.first forloop.last {% if ordered_warranty %} {% else %} {% endif %} 母板:{% block title %}{% endblock %} 子板:{% extends "base.html" %} {% block title %}{% endblock %}
创建表
class useinfo(models.Model): nid = models.BigAutoField(primary_key=True) usename = models.CharField(max_length=32) password = models.CharField(max_length=64) ug = models.ForeignKey('group',on_delete=models.CASCADE,null=True)
连表结构
一对多:models.ForeignKey(其他表)
多对多:models.ManyToManyField(其他表)
一对一:models.OneToOneField(其他表)
操作表
增 models.class1.objects.create(title='通信163')
删 models.class1.objects..filter(id=1).delete()
改 models.class1.objects.filter(id=3).update(title="PHP")
查 models.class1.objects.all()
models.class1.objects.filter(**kwargs): 它包含了与所给筛选条件相匹配的对象
$.ajax({ url:"/app01/test/", data:{id:1}, type:'POST', success:function(data){ console.log(data); } });
cookie
rep = HttpResponse(...) 或 rep = render(request, ...) rep.set_cookie(key,value,...) rep.set_signed_cookie(key,value,salt='加密盐',...)
request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age=None) 参数: default: 默认值 salt: 加密盐 max_age: 后台控制过期时间
根据app对路由规则进行分类
1
|
url(r '^web/' ,include( 'web.urls' )), |