Django基础

1.Django安装

pip install django==2.1.5

2.修改配置

settings.py-->

LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False

3.Django默认的数据库是sqlite,如果想用mysql

settings.py-->

    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'db1',
        'USER': 'user1',
        'PASSWORD': 'pass111',
        'HOST':'192.126.1.1',
        'PORT':3306
    } #MYSQL的配置

  然后在__init__.py里加入

  import pymysql
  pymysql.install_as_MySQLdb()
  #如果使用mysql的话,一定要加这个

4.在主目录下新建一个static目录来存放静态文件

5.用静态文件的配置

settings.py-->

STATICFILES_DIRS = (
  os.path.join(BASE_DIR,'static'),
) #用静态文件的配置

6.与数据库交互

python manage.py makemigrations  生成表结构

python manage.py migrate  建表

python manage.py createsuperuser  创建超级账号

7.如果想通过后台管理加数据

admin-->  

from . import models
admin.site.register(models.Category)

8.Django操作数据库

新建一个py文件-->model_test.py

导入model文件

import django,os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'django_demo.settings')
django.setup()  

from user.models import Category

  新增:

  方式1-->

  Category.objects.create(name='DB2')

  方式2-->

  obj = Category(name='Oracle')
  obj.save()

  查询:

  obj = Category.objects.all()   #获取所有的
  obj = Category.objects.get(id=1)   #  获取一条,获取多条会报错
  obj = Category.objects.get(id__gt=1)  #大于
  obj = Category.objects.get(id__lt=1)  #小于
  obj = Category.objects.get(id__gte=1)  #大于等于
  obj = Category.objects.get(id__lte=1)  #小于等于

  data = Category.objects.filter()
  data.first()  #取第一个
  data.last()  #取最后一个
  data = Category.objects.filter(name__endswith='xx')  #以xx结尾
  data = Category.objects.filter(name__startswith='xx')  #以xx开头
  data = Category.objects.exclude(name="首页").filter(id__gte=1)   #exclude排除
  data = Category.objects.filter(name__startswith='李').exclude(sex="女")  #以李开头且性别不是女的
  data = Category.objects.filter(name__contains='l')   #包含
  data = Category.objects.filter(name__icontains='l')  #不区分大小写包含
  data = Category.objects.filter(name__in=['首页','Mysql','python'])   #包含

  修改:

  Category.objects.update(is_delete=True)  #修改全表
  obj = Category.objects.get(id=1)  #改某条数据
  obj.is_delete = False
  obj.save() #修改一条需要sava

  Category.objects.filter(id__in=[2,3,4]).update(is_delete=False) # 修改多条不需要sava

  删除:

  Category.objects.all().delete()  #删除全表
  obj = Category.objects.get(id=1)  #删某条数据
  obj.delete()
  obj.save()

  Category.objects.filter(id__in=[2,3,4]).delete(is_delete=False)

  排序:

  Category.object.all().order_by("greate_time")  #按照创建时间排序

9.上传文件

pip install pillow  #需要先下载这个模块

setting-->

MEDIA_ROOT = os.path.join(BASE_DIR,'static')   #上传文件的路径

原文地址:https://www.cnblogs.com/wangyujian/p/12093965.html