一、先配置两行代码
import django,os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'dj_test.settings')
django.setup()
二、增删改查代码
增
c_obj = Category.objects.create(name="Mysql")
obj = Category(name='Oracle')
obj.save()
查询 ---> 单表查询
Category.objects.all()
obj = Category.objects.get(id=1)
obj = Category.objects.get(name="Mysql")
Category.objects.all().order_by("create_time")
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(id__gte=1,name="首页")
print(data.first())
print(data.last())
Category.objects.filter(name__endswith='xx')
Category.objects.filter(name__startswith='xx')
Category.objects.exclude(name="首页").filter(id__gte=1)
Category.objects.filter(name__startswith='李').exclude(sex="女")
print(Category.objects.filter(name__contains='L') )
print(Category.objects.filter(name__icontains='l'))
print(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()
Category.objects.filter(id__in=[2,3,4]).update(is_delete=False)
删除
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)
多表 1对多查询
c_obj = Category.objects.get(id=1)
print(c_obj.article_set.count())
print(c_obj.article_set.all())
article = Article.objects.get(id=1)
print(article.category.name)