导读:很多朋友问到关于Django库是如何测试的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
本文目录一览:
1、如何独立使用django的数据库访问功能2、django是做什么的?3、如何让django不使用测试数据库4、django怎么判断数据库的记录是否存在5、django ORM 怎样判断数据库中的表是否已经存在?6、Django测试数据库已存在怎么办?如何独立使用django的数据库访问功能
1. 安装Django
[plain] view plain copy
cd Django-1.4
python setup.py install
2. 安装postgresql的客户端:
[plain] view plain copy
sudo apt-get install -y postgresql-client-9.1 python-psycopg2
3. 新建project:
[plain] view plain copy
django-admin.py startproject myproject
4. 在myproject下新建app:
[plain] view plain copy
python manage.py startapp myapp
4. 新增环境变量:
编辑/etc/profile文件,在末尾加入以下语句:
[plain] view plain copy
span style="color:#FF0000;" export PYTHONPATH=$PYTHONPATH:/home/yc/src/myproject
export DJANGO_SETTINGS_MODULE=myproject.settings/span
5.
假设数据库已经由Django的另一个应用(名称为otherapp)建好,数据库类型是postgresql,名称为mydb,位于
192.168.1.23。见好的数据库中有一个表,名称是otherapp_user,则将otherapp/models.py拷贝到myapp
/models.py。
注意检查models.py下的class user类的class Meta:部分,如果没有applabel标签,则要加上:app_label='otherapp'
再修改/home/yc/src/myproject下的settings.py文件,如下:
[plain] view plain copy
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'mydb', # 'vps2db_test1' Or path to database file if using sqlite3.
'USER': 'postgres', # Not used with sqlite3.
'PASSWORD': '123', # Not used with sqlite3.
'HOST': '192.168.1.23', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '5432', # Set to empty string for default. Not used with sqlite3.
}
}
[plain] view plain copy
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'span style="color:#FF0000;"myapp/span',
)
6. 在myapp目录下编写测试程序
[python] view plain copy
from models import user
if __name__=="__main__":
try:
u = user.objects.get(id=user_id)
except user.DoesNotExist:
print "user not exist)
return None
else:
return u
django是做什么的?
Django是基于Python的免费和开放源代码Web框架,它遵循模型-模板-视图(MTV)体系结构模式。它由Django Software Foundation(DSF)维护,这是一个由非营利组织成立的独立组织。
Django的主要目标是简化复杂的,数据库驱动的网站的创建。该框架强调组件的可重用性和“可插入性”,更少的代码,低耦合,快速开发以及不重复自己的原则。整个过程都使用Python,甚至用于设置文件和数据模型。Django还提供了一个可选的管理创建,读取,更新和删除界面,该界面通过自省动态生成并通过管理模型进行配置。
一些使用Django的知名网站包括公共广播服务,Instagram, Mozilla,华盛顿时报, Disqus,Bitbucket,和Nextdoor。
Django创建于2003年秋天,当时《劳伦斯日报》世界报纸的网络程序员Adrian Holovaty和Simon Willison开始使用Python来构建应用程序。西蒙·威利森(Simon Willison)的实习期结束前不久,雅各布·卡普兰·莫斯(Jacob Kaplan-Moss)在Django的发展中就被聘用了。它于2005年7月在BSD许可下公开发布。该框架以吉他手Django Reinhardt的名字命名。2008年6月,宣布新成立的Django软件基金会(DSF)将来将维护Django。
2015年7月,与一些Django联合创始人和开发人员建立联系的软件咨询公司Revolution Systems在劳伦斯举办了10周年纪念活动。
Django的设计理念如下:
松耦合——Django的目标是使堆栈中的每个元素彼此独立。
更少的编码——更少的代码,因此可以快速开发。
不重复自己(DRY)——一切都应该只在一个地方开发,而不是一次又一次地重复。
快速开发——Django的理念是尽一切可能促进超快速开发。
简洁的设计——Django严格按照自己的代码维护简洁的设计,并易于遵循最佳的Web开发实践。
Django的一些优势如下:
对象关系映射(ORM)支持——Django在数据模型和数据库引擎之间建立了桥梁,并支持包括MySQL,Oracle,Postgres等在内的大量数据库系统。
多语言支持——Django通过其内置的国际化系统支持多语言网站。因此,您可以开发支持多种语言的网站。
框架支持——Django内置了对Ajax,RSS,缓存和其他各种框架的支持。
GUI——Django为管理活动提供了一个很好的即用型用户界面。
开发环境——Django带有轻量级的Web服务器,以促进端到端应用程序的开发和测试。
Django是Python Web框架。和大多数现代框架一样,Django支持MVC模式。
关于Python的基础问题可以看下这个网页的视频教程,网页链接,希望我的回答能帮到你。
如何让django不使用测试数据库
Django使用数据库都是在settings.py里的DATABASES里配置的。
你配置个正式的数据库不就可以了
django怎么判断数据库的记录是否存在
1、代码文件第一行加编码定义了吗?比如如下:
1
#coding:utf-8
2、代码里面的中文字符串前面最好加u,比如:
1
students.objects.filter(sex=u'男')
3、Django技术栈下所有的编码都是unicode,所以你在json.dupm哪儿做的编码设置有点突兀。
仅供参考~
django ORM 怎样判断数据库中的表是否已经存在?
Django makemigration 和 Django migrate 会保证 Django 管理的表一定是存在的。
(不要忘记执行这两个 manage 命令就行了, 使用 python manage.py 可以看帮助)
如果是外部表(managed=False),可以使用 数据库连接 构造查询表的 SQL 去测试。
Django测试数据库已存在怎么办?
数据库创建前做个判断
if not exists database
create database
结语:以上就是首席CTO笔记为大家整理的关于Django库是如何测试的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于Django库是如何测试的相关内容别忘了在本站进行查找喔。