12月18日任务 4 models基本使用 5 基本命令

models基本使用

models是数据库的一个api,经过modles模拟数据库的增删改查html

Django有一个sqllit的工具方便打咱们进行学习测试前端

新建表

编辑models,建立表结构python

from django.db import models

# Create your models here.

class UserInfo(models.Model):
	username=models.CharField(max_length=32,null=True)
	password=models.CharField(max_length=32,null=True)

在终端中执行jquery

python manage.py makemigrations
python manage.py migrate

若makemigrations 和 migrate以后生成的sqlite没有表sql

选择driver,在以后出现的界面安装便可shell

正常操做后便可生成表(会额外生成一些Django自带表)数据库

将db.sqlite3拖到右侧就可查看django

双击打开就能够进行编辑操做后端

从数据库中读取数据

编辑以前views中定义的login函数api

views中函数经过models读数据的时候,若是取的数据是多个数据,就会返回一个list

from django.shortcuts import render,redirect,HttpResponse
from myapp import models  '''import models模块'''
# Create your views here.
def login(request):
	if request.method == 'GET':
		obj_li = models.UserInfo.objects.all()
		for  obj in obj_li:
			print ('username  : ',obj.username)
			print ('password  : ',obj.password)

		return render(request,'login.html',{'aaa':obj.username,'bbb':obj.password}

return render(request,'login.html',{'aaa':obj,'bbb':obj_li})

咱们返回一下obj 和obj_li看一下

obj_li = models.UserInfo.objects.all()  \\查询全部
obj_li = models.UserInfo.objects.filter(username = 'zx') \\查询,至关于sql语句的where,返回querysetl

基本命令

Django基本命令

一、建立一个django project

django-admin.py startproject mysite

二、在mysite目录下建立应用,好比blog:

python manage.py startapp blog

三、启动django项目

默认8000端口

python manage.py runserver 8080

四、同步更改数据库表或字段

python manage.py syncdb

注意:Django 1.7.1 及以上的版本须要用如下命令
python manage.py makemigrations
python manage.py migrate

这种方法能够建立表,当你在models.py中新增了类时,运行它就能够自动在数据库中建立表了,不用手动建立。 五、清空数据库

python manage.py flush

此命令会询问是 yes 仍是 no, 选择 yes 会把数据所有清空掉,只留下空表。

六、建立超级管理员

python manage.py createsuperuser

# 按照提示输入用户名和对应的密码就行了邮箱能够留空,用户名和密码必填

# 修改 用户密码能够用:

python manage.py changepassword username

七、Django 项目环境终端

python manage.py shell

八、Django 项目环境终端

python manage.py dbshell

九、更多命令

python manage.py

10 static配置

#三、STATIC文件还能够配置STATICFILES_DIRS,指定额外的静态文件存储位置。 # STATIC_URL的含义与MEDIA_URL相似。

# ----------------------------------------------------------------------------
#注意1:
    #为了后端的更改不会影响前端的引入,避免形成前端大量修改

    STATIC_URL = '/static/'               #引用名
    STATICFILES_DIRS = (
        os.path.join(BASE_DIR,"statics")  #实际名 ,即实际文件夹的名字
    )

    #django对引用名和实际名进行映射,引用时,只能按照引用名来,不能按实际名去找
    #<script src="/statics/jquery-3.1.1.js"></script>
    #------error-----不能直接用,必须用STATIC_URL = '/static/':
    #<script src="/static/jquery-3.1.1.js"></script>

#注意2(statics文件夹写在不一样的app下,静态文件的调用):

    STATIC_URL = '/static/'

    STATICFILES_DIRS=(
        ('hello',os.path.join(BASE_DIR,"app01","statics")) ,
    )

    #<script src="/static/hello/jquery-1.8.2.min.js"></script>

#注意3:
    STATIC_URL = '/static/'
    {% load staticfiles %}
   # <script src={% static "jquery-1.8.2.min.js" %}></script>
相关文章
相关标签/搜索