码迷,mamicode.com
首页 > 其他好文 > 详细

Django基础

时间:2019-12-28 23:16:06      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:let   等于   min   cts   acl   生成   方式   oam   imp   

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‘)   #上传文件的路径

Django基础

标签:let   等于   min   cts   acl   生成   方式   oam   imp   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!