概述
【相关学习推荐:python教程】
python model的用法是:
1.首先是数据库配置
一般新建的django项目都是配置为sqlite为数据库
通常项目中都会使用MySQL
所以首先修改配置
在project的settings.py
里修改
将原来配置sqlite改为自己的属性
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'USER':'root',
'PASSWORD':'',
'NAME':'djangouse',
'HOST':'localhost',
}
}
登录后复制
USER填MySQL的用户名
PASSWORD填MySQL的密码
NAME填所使用的数据库的名字,这个要自己到MySQL里创建
注意:使用model前记得把MySQL打开
2.在新版的django中命令行有了很大的变化
关于model的主要有以下几句命令
python manage.py check 检查model是否有拼写错误
python manage.py makemigrations 将model的改变生成一个迁移文件
python manage.py migrate 执行迁移
通常在创建好app和数据库之后
首先执行
python manage.py migrate
登录后复制
会生成一些管理的表
3.之后是新建model
首先要导入models包
在app的models.py里添加
from django.db import models
登录后复制
class Book(models.Model):
title=models.CharField(max_length=100)
def __unicode__(self):
return self.title
登录后复制
这个Book的model有一个title字段最大长度为100
unicode这个方法是返回的是查询到这个Object时显示的内容,默认显示为Object
然后就是依次执行
python manage.py check 检查model是否有拼写错误
python manage.py makemigrations 将model的改变生成一个迁移文件
python manage.py migrate 执行迁移
登录后复制
然后查询所使用的数据库会发现多了一个名字含有book的表
4.接下来是model的增删查改
增
book=Book(title="hello django")
book.save()
登录后复制
删
book=Book.objects.get(id=1)
book.delete()
登录后复制
获取id为1的对象后执行delete方法
查
book=Book.objects.all()
登录后复制
查询全部Book对象,返回一个集合
book=Book.objects.get(id=1)
登录后复制
获得id为1的Book对象
book=Book.objects.filter(title__icontains="hello")
登录后复制
获得title字段里含有hello的Book对象集合
改
book=Book.objects.get(id=1)
book.title="django"
book.save()
登录后复制
5.接下来的model的进阶使用——manager
manager是对model一些常用方法的封装
有获得数值的,也有获得对象集合的
看看获得数值的manager怎么创建
在app里的model.py里新建一个继承自models.Manager的类
class BookManager(models.Manager):
def get_book_count(self,keyword):
return self.filter(title__icontains=keyword).count()
登录后复制
然后把manager添加进model
class Book(models.Model):
title=models.CharField(max_length=100)
myobjects=BookManager()
登录后复制
使用的时候是
count=Book.myobjects.get_book_count("hello")
登录后复制
这样就返回了名字含有book对象的数量
如果想获得一个有特殊条件对象集合呢?
新建一个manger
class PythonManager(models.Manager):
def get_query_set(self):
return super(PythonManager,self).get_query_set().filter(title__icontaions='hello')
登录后复制
把manager添加进model
class Book(models.Model):
title=models.CharField(max_length=100)
myobjects=BookManager()
pyhton_objects=PythonManager()
登录后复制
用的时候是
queryset=Book.pyhton_objects.get_query_set()
登录后复制
这样就返回了名字含有hello的Book对象集合
6.接下来是用后台页面管理model
首先要在终端输入
python manage.py createsuperuser
登录后复制
以上就是python model怎么用的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是可靠砖头为你收集整理的python model怎么用的全部内容,希望文章能够帮你解决python model怎么用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复