Python Web 测试数据 (第五天)

版权声明:本文为博主原创文章,可以随意转载,但请附原地址或原作者名。谢谢! https://blog.csdn.net/farley119/article/details/82752220

引言

python shell 大家可以了解一下,我觉得我在这里讲这个就不合适了。本节主要是在Python shell下的编写。

数据模型测试

在上节中我们创建了数据模型。但是,我们创建的表示空的。这节我们就先给它添加一条数据,并读出来看看结果。这样保证我们的数据模型是可以的之后再进行下一步开发。
首先,打开我们的Python shell.

python manage.py shell
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 12:04:33) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.2.1 -- An enhanced Interactive Python. Type '?' for help.
In [1]: 

然后导入我们所需的时间模块和模型模块的包

In [1]: from myblog.models import BlogPost

In [2]: from datetime import datetime

下面我们先看下我们的BlogPost表中都有哪些数据:

In [3]: BlogPost.objects.all()
Out[3]: <QuerySet []>

空的,这就对了。我们还没有往里面添加数据呢。
下面我们就先添加一条数据,也就是意味着我们发表了一篇博文:

In [4]: bp = BlogPost(title="My Frist Blog",body="This is my frist blog,And it i
   ...: s a test blog ,I love python",timestamp=datetime.now())

OK,然后我们把它保存进我们的数据表中:

In [7]: bp.save()
/anaconda3/lib/python3.6/site-packages/Django-2.2-py3.6.egg/django/db/models/fields/__init__.py:1419: RuntimeWarning: DateTimeField BlogPost.timestamp received a naive datetime (2018-09-16 14:04:46.630707) while time zone support is active.
  RuntimeWarning)

这个提示就表示我们已经添加成功了。下面我们回过头来再看下数据表中数据的数量:

In [8]: BlogPost.objects.count()
Out[8]: 1

这个时候就有一条了吧。那么我们怎么取出来这条数据呢?有一种办法简单粗暴:

In [9]: bp = BlogPost.objects.all()[0]

直接取出表中的第一条数据,那个中括号中的值你可以随意写,想去第二条就写1,第00条就写99.。。。。。。
下面我们对比一下,看拿到的这个数据是不是我们刚才添加的那一条呢?按理说应该是的,毕竟我们仅且只添加了一条。

In [10]: print(bp.title)
My Frist Blog

这就对了。打开我们的数据库,去看看这个表的结构和数据,看是不是和我们设想的一致呢?

在这里插入图片描述

毫无疑问。
更多内容请关注公众号“计算机自学平台”

猜你喜欢

转载自blog.csdn.net/farley119/article/details/82752220