摘要:
前年写的,居然一直躺在草稿箱里。今天把它放出来。。。GTD(Getting Things Done) 是一种将繁重超负荷的工作生活方式变成无压力高效的时间管理系统(David Allen, 《Getting Things Done-The Art of Stress-Free Productivity》。其核心是把所有要做的事情都记录下来,然后整理组织,并逐一执行。也就是收集、整理、组织、回顾、执行五个过程,如下图:收集:把接收到的各种事件集中在一起;整理:对事件做出快速判断,决定直接抛弃、留存归档或是产生一个任务;组织:根据任务的不同属性将其归入不同的工作清单;回顾:定期检查工作清单,如果条 阅读全文
摘要:
到目前为止,我们开发的所有功能都是匿名访问的,这显然不够安全。通常我们会要求注册的用户通过用户名和密码登录,只有登录后的用户才可以管理产品。套用专业的说法就是:第一步是认证,验证用户是否是他所宣称的那个人;第二步是授权,验证用户是否拥有执行某种操作的权限。Django已经提供了一个django.contrib.auth应用来处理登录、登出和权限验证,同时还提供了django.contrib.admin应用可以进行用户管理(admin应用还有很多其他的功能)。所以我们只需要将这些app插入到我们的站点,就可以实现登录和用户管理的大部分功能。本节先介绍如何进行用户管理。我们前面已经介绍过在Djan 阅读全文
摘要:
在上一节我们实现了针对某个产品的订单订阅功能。但是我们可能需要直接在站点上查询所有的订单。显然,随着时间的增长订单会越来越多,所以分页(Pagination)是个好办法:每次只显示一部分订单。分页是Web应用常用的手法,Django提供了一个分页器类Paginator(django.core.paginator.Paginator),可以很容易的实现分页的功能。该类有两个构造参数,一个是数据的集合,另一个是每页放多少条数据。Paginator的基本使用如下:$python manage.py shell>>> from django.core.paginator import 阅读全文
摘要:
在Zachman Framework之后,很多组织开始了对企业架构的研究。其中 Steven H. Spewak在1998年定义了企业架构计划(Enterprise Architect Planning,EAP)。Spewak将EAP定义为”制定信息架构以支持业务这一过程和实现该过程的计划“。从企业架构的概念来看,EAP更偏重于企业架构的动态部分,包括过程、计划、阶段的划分等。EAP将企业架构的过程分成四个阶段(EAP中叫做层级),如下图所示:Level1:开始启动。形成初步的计划。Level2:现状分析(As-Is)。分析当前的业务过程模型和系统/技术现状,作为实施计划的基线。Level3: 阅读全文
摘要:
记得有人跟我说过,rails的has_many :through是一个”亮点“,在Django看来,该功能简直不值一提。rails中的many-to-many关联中,还需要你手工创建关联表(写migration的方式),而has_many :through的”语法“只不过是为了自定义关联关系:通过一个中间的、到两端都是many-to-one的模型类实现多对多关联。 在Django中,many-to-many的中间关系表是自动创建的,如果你要指定一个自己的Model类作为关系对象,只需要在需要获取对端的Model类中增加一个ManyToManyField属性,并指定though参数。比如现在我们 阅读全文