Django学习笔记之模板渲染、模板语言、simple_tag、母版子版、静态配置文件
?
一、首先我們用PyCharm來創建一個Django項目
終端命令:django-admin startproject sitename 圖形創建: 這樣一個Django項目就創建完成了,上面可以看到項目的一個結構 接下來創建一個APP 二、創建APP 進入到項目所在目錄執行命令 C:\Users\yangmingwei\PycharmProjects\yangmv>?python manage.py startapp web 上圖可以看到APP的一個結構常用命令:
python manage.py runserver 127.0.0.1:8080??運行
python manage.py startapp appname? ??? ? 創建app
python manage.py syncdb? ??? ??? ??? ??? ??? ??
python manage.py makemigrations
python manage.py migrate
? ????python manage.py syncdb? ??? ??? ? 同步數據庫
? ????python manage.py createsuperuser?創建用戶
三、運行
python manage.py runserver 0.0.0.0:8080 這樣一個APP就運行起來了 python manage.py syncdb ?建立數據庫,創建用戶后,即可登陸Django admin后臺 http://127.0.0.1:8000/admin/四、添加一個url頁面
五、模板渲染
用法和jinja2相同六、模版語言
模板中也有自己的語言,該語言可以實現數據展示
{{ item }} {% for item in item_list %} <a>{{ item }}</a> {% endfor %} //for循環forloop.counter //計數器forloop.first //第一個forloop.last {% if ordered_warranty %} {% else %} {% endif %} //if語句母板:{% block title %}{% endblock %} 子板:{% extends "base.html" %}{% block title %}{% endblock %}
幫助方法: {{ item.event_start|date:"Y-m-d H:i:s"}} {{ bio|truncatewords:"30" }} {{ my_list|first|upper }} {{ name|lower }}
?
?七、自定義simple_tag
a、在app中創建templatetags模塊
b、創建任意 .py 文件,如:xx.py
from django import templatefrom django.utils.safestring import mark_safefrom django.template.base import resolve_variable, Node, TemplateSyntaxError register = template.Library() @register.simple_tagdef my_simple_time(v1,v2,v3): return v1 + v2 + v3 @register.simple_tagdef my_input(id,arg): result = "<input type='text' id='%s' class='%s' />" %(id,arg,) return mark_safe(result)c、在使用自定義simple_tag的html文件中導入之前創建的 xx.py 文件名
html文件最頂部導入
| 1 | {%?load xx?%} |
d、使用simple_tag
| 1 2 | {%?my_simple_time?1?2?3%} {%?my_input?'id_username'?'hide'%} |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | {% load xx %} <!DOCTYPE html> <html lang="en"> <head> ????<meta charset="UTF-8"> ????<title></title> </head> <body> ????<h1>我是index</h1> ????<h2>{{ name }}</h2> ????<h2>{{ age }}</h2> {% my_simple_time 1 2 3 %} ????{% my_input 'id_username' 'hide' %} </body> </html> |
e、在settings中配置當前app,不然django無法找到自定義的simple_tag
運行后返回?
八、母版、子版、include
母板:{% block title %}{% endblock %}子板:{% extends "base.html" %}
{% block title %}{% endblock %} ? ??? ??? {% include 'include/input.html' %}? ?
母版
子版
include
創建一個子版son的目錄
訪問http://127.0.0.1:8000/son/
九、靜態文件配置
十、Django登陸實例
導入bootstrap登陸頁面代碼 + View Code?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <form class="form-horizontal"> ??<div class="form-group"> ????<label for="inputEmail3" class="col-sm-2 control-label">Email</label> ????<div class="col-sm-10"> ??????<input type="email" class="form-control" id="inputEmail3" placeholder="Email"> ????</div> ??</div> ??<div class="form-group"> ????<label for="inputPassword3" class="col-sm-2 control-label">Password</label> ????<div class="col-sm-10"> ??????<input type="password" class="form-control" id="inputPassword3" placeholder="Password"> ????</div> ??</div> ??<div class="form-group"> ????<div class="col-sm-offset-2 col-sm-10"> ??????<button type="submit" class="btn btn-default">Sign in</button> ????</div> ??</div> </form> |
?
?
登陸測試驗證
密碼錯誤時
密碼正確時
?
?
?
十一、Model操作數據庫增刪改查
1、創建model類
??2、注冊APP,settings添加app
3、生成相應的表
python manage.py makemigrations ? ? python manage.py migrate? ?4、admin后臺注冊表
后臺可以管理,添加數據?
?
后臺可以管理,添加數據?
?
對數據進行增刪改查
查
models.UserInfo.objects.all()?
?
?成功獲取數據
?
增
models.UserInfo.objects.create(user=a_user,pwd=a_pwd)刪
models.UserInfo.objects.filter(user=a_user).delete()改
models.UserInfo.objects.filter(user=a_user).update(pwd='520')?
參考
?
轉載于:https://www.cnblogs.com/JetpropelledSnake/p/9201577.html
總結
以上是生活随笔為你收集整理的Django学习笔记之模板渲染、模板语言、simple_tag、母版子版、静态配置文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 24.下拉列表的交互事件
- 下一篇: RocketMQ之Pull消费者客户端启