首页 > 其他 > 详细

django源码解析之 BooleanField (三)

时间:2014-11-08 07:03:17      阅读:227      评论:0      收藏:0      [点我收藏+]
1     def __init__(self, *args, **kwargs):
2         kwargs[blank] = True
3         if default not in kwargs and not kwargs.get(null):
4             kwargs[default] = False
5         Field.__init__(self, *args, **kwargs)

在看完 BooleanField 的 to_python 之后,我们来看看 __init__ 

 

先看看我从github上copy的一段代码

    login_required = models.BooleanField(
        _(login required), default=False,
        help_text=_(Only authenticated users can view the entry.))

这是一个非常常见的使用 BooleanField 示例。

我们继续看 __init__ 

首先,添加了 blank=True ,然后判断选项中是否设置了 default ,且未添加 null 属性

请看代码

>>> d = {}
>>> d.get(null) == True
False
>>> d = {null:1234}
>>> d.get(null) == True
False
>>> 

 

至于添加null后会出现什么情况,回头试试就知道了。

django源码解析之 BooleanField (三)

原文:http://www.cnblogs.com/tk091/p/4082664.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!