Django-模型
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Django-模型,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2427字,纯文字阅读大概需要4分钟。
内容图文
![Django-模型](/upload/InfoBanner/zyjiaocheng/1201/daed122b457e44158a450e190e5e9c9a.jpg)
基于MVC框架models。views。controller
M(moedels)T(template)V(views)
数据库配置:
支持:PostgreSQL、MYSQL、ORACLE、SQLite.
在setting.py文件中配置: ‘ ‘
DATABASE_ENGINE= ‘ ‘ 数据库引擎
DATABASE_NAME= ‘ ‘ 数据库名
DATABASE_USER= ‘ ‘ 用户名
DATABASE_PASSWORD= ‘ ‘ 密码
DATABASE_HOST = ‘ ‘ 主机
一些常见错误
错误信息 | 解决方法 |
---|---|
You haven’t set the DATABASE_ENGINE setting yet. | 不要以空字符串配置`` DATABASE_ENGINE`` 的值。 表格 5-1 列出可用的值。 |
Environment variable DJANGO_SETTINGS_MODULE is undefined. | 使用`` python manager.py shell`` 命令启动交互解释器,不要以`` python`` 命令直接启动交互解释器。 |
Error loading _____ module: No module named _____. | 未安装合适的数据库适配器 (例如, psycopg 或 MySQLdb )。Django并不自带适配器,所以你得自己下载安装。 |
_____ isn’t an available database backend. | 把DATABASE_ENGINE 配置成前面提到的合法的数据库引擎。 也许是拼写错误? |
database _____ does not exist | 设置`` DATABASE_NAME`` 指向存在的数据库,或者先在数据库客户端中执行合适的`` CREATE DATABASE`` 语句创建数据库。 |
role _____ does not exist | 设置`` DATABASE_USER`` 指向存在的用户,或者先在数据库客户端中执创建用户。 |
could not connect to server | 查看DATABASE_HOST和DATABASE_PORT是否已正确配置,并确认数据库服务器是否已正常运行。 |
创建第一个程序
models.py
from django.db import models class Publisher(models.Model): #Publisher:出版商 name = models.CharField(max_length = 10) address = models.CharField(max_length = 50) city = models.CharField(max_length = 20) state_province = models.CharField(max_length=30) country = models.CharField(max_length=50) website = models.URLField() foreign = models.ForeignkeyField(max_length = 20) #外键约束 data = models.DataField(max_length = 20) #日期型 TimeFileld、DateTimeField flt = models.FloatField(max_length = 20) #数字型 IntegerField、DecimalField
表名 = app名称+小写类名(会把_替换为空格)
python manage.py validate(验证有效性)
python manage.py syncdb (创建数据表)
python manage.py sqlall app名(显示创建表SQL语句)
在每个模型里加入__unicode__()方法
def __unicode__():
return u‘%s %s‘ % (self.name,self.city)
插入更新数据
p = Publisher(name = ‘jay‘, city = ‘CHINA‘, country=‘bj‘)
p.save()
p = Publisher.objects.getname(name=‘joy‘)
p.name = ‘jjj‘
p.save()
查询数据
Publisher.objects.all() #相当于select * 取出全部数据
Publisher.objects.filter(name = ‘joy‘) #相当于 where name="joy"
Publisher.objects.filter(name__container = ‘joy‘) #相当于 name like ‘%joy%‘
Publisher.objects.get(name = ‘joy‘) #获取单个对象。而不是整个列表
Publisher.objects.filter.order_by(name=‘joy‘)
Publisher.objects.order_by(‘name‘)[0] #限制返回数据 [0:2]
数据排序
Publisher.objects.order_by("name") #可以是多个参数,以逗号分隔
Publisher.objects.order_by("-name")#逆向排序
在Publisher类中添加
class Meta:
ording = [‘name‘] 默认排序
删除
p.delete()
Publiser.objects.all().delete()
原文:http://my.oschina.net/u/1860571/blog/492494
内容总结
以上是互联网集市为您收集整理的Django-模型全部内容,希望文章能够帮你解决Django-模型所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。