BLOG
Enjoy when you can, and endure when you must.
APR 07, 2016/Django
用 Django 构建简易博客(二):开启博客系统之旅

在我建立这个网站之初,我就发了一个系列的博客《Django 博客系统开发》,当时的想法是将自己所学和所实践的一些东西整理一下、记录下来。时至今日,三年的时光已在眨眼间过去,我发现这几篇文章在我网站的访问量排行中依然居高不下。说明这几年大家对 Python 和 Django 的关注度确实比较高并且有很多新的开发者加入其中,这当然要数是一个非常好的趋势。但技术是不断发展的,特别 Python 和 Django 都一直处于快速发展期,当年的文章中提到的方法很多已不再适用。因此萌发了做一个更新的想法,让更多的朋友关注最新的技术,而不是面对一个旧版冥思苦想。

本文一共分为五篇。本文为第二篇,主要关注 MTV 中的 M(模型)层。了解如何建立一个 Django Application、建立数据库模型并将表结构同步到实际的数据库中。最后还会简单演示一下如何利用 Django 的站点管理来帮助我们写入内容。

SEP 23, 2013/Django
django中复制/克隆一条查询结果
本文转载自:http://mozillazg.com/2013/02/django-copy-or-clone-a-query-result-and-insert-it-into-database.html复制/克隆一条查询结果,并将它插入到数据库中:将 pk 值设为 None 即可: blog.save() # post.pk == 1     blog.pk = None blog.save() # post.pk == 2如果该 model 继承...
APR 07, 2013/Django
South - syncdb的替代
功能:South是django的一个的第三方App,能够检测对models的更改并同步到数据库,弥补了syncdb的一些不足,是很好的替代工具。安装:1. 使用pip安装:    pip install South2. 加入到工程中:    打开settings.py,在INSTALLED_APPS中加入'south'3. 执行syncdb:    python manage.py syncdb基本使用:1. 对于新建工程,在创建app之后,可以执行:    python manage.py ...
MAR 05, 2013/Django
Django Model中基于时间的筛选(续)
在昨天的写《Django Model中基于时间的筛选》一文中,我写到可以使用published_date__range来提取某个时间段内的所有数据,那就想到这样一个需求:如果要筛选出某月内的所有数据应该怎么做呢?如果采用写死的方式,如:start_date = datetime.date(2012, 12, 1)end_date = datetime.date(2012, 12, 31)blog.objects.filter(published_date__range=(start_date, end_date))这样的局限在于如果月中的天数是不定的,我们必须基于给定的月份找到其头和尾。...
MAR 04, 2013/Django
Django Model中基于时间的筛选
在Django的Model中,可以基于时间对数据进行筛选,并且可以有很多的筛选方法供选择使用。1.published_date__gt:筛选出大于某个时间的所有数据。time_point = datetime.datetime.now() - datetime.timedelta(days=-1)result = blog.objects.filter(published_date__gt=time_point)2.published_date__gte:筛选出大于等于某个时间的所有数据。  time_point = datetime.datetime.now() - date...
1