django 几个小 tips

django 几个小 tips

django forms

djang forms 是django非常有用的功能之一,展示表单和接收表单数据非常方便。

css class

比如下面的代码:

n_tz = forms.ChoiceField(choices=TIMEZONE_CHOICE, initial=8, required=True, widget=forms.Select(attrs={"class": "form-control", "id": 'n_tz'}))

实现了两个常用的功能
- 指定css class 和 id
- initial 初始值

动态改变表单验证逻辑

我们经常有这样的需求,field b不是必填项,field c也不是必填项,但是如果b不为空,c也需要不为空。我们可以定义一个 clean_c 的函数(函数名为clean_)来实现这个功能,也可以定义clean函数。

class DemoForm(forms.Form):
    a ...

继续阅读

Oracle Express on CentOS 7

Oracle Express on CentOS 7

有些时候我们需要一个Oracle的环境来做测试或实验,但是苦于没有服务器,或者不在工作环境当中。值得高兴的是,Oracle有一个Oracle Express Edition,提供了rpm安装包,快捷方便。

VirtualBox VM

下载CentOS 7 DVD

virtualbox的网络设置中建议选择桥接,因为我们需要从宿主机连接虚拟机,默认的NAT只能从虚拟机内部访问外部。

安装过程中建议选择Server with GUI,再选择develop tools。

安装完成之后,需要同意license(比较坑),先按1,再按2同意条款,接下来按C继续。

Oracle Express Edition

在Oracle 官网下载Oracle Database Express Edition 11g Release 2

下载下来之后是一个rpm包,oracle-xe-11.2.0-1.0.x86_64.rpm,上传到虚拟机当中安装,sudo rmp ...

继续阅读

使用树莓派科学上网(shadowsocket版)

使用树莓派科学上网(shadowsocket版)

最近使用VPN科学上网有点问题,只能上shadowsocket了

server

首先我们需要一个国外的服务器,可以是云主机或者是VPS,在上面安装shadowsocket

pip 安装的是python版,也可以安装C版本,不过需要自己编译。

sudo pip install shadowsocks
# 或者安装libev 版本的
sudo apt-get install build-essential autoconf libtool libssl-dev
git clone https://github.com/shadowsocks/shadowsocks-libev.git
cd shadowsocks-libev
./configure && make
make install

配置文件 /etc/shadowsocks.json

{
"server":"0.0.0.0",
"server_port":9000,
"local_port":1080,
"password":"helloworld" ...

继续阅读

技术工作中的乱象

技术工作中的乱象

在创业潮的推动下,互联网创业现在进行得如火如荼。不过我们却最近频繁听到某互联网公司的负面新闻,说明了互联网公司的管理方式出现了问题。管理大师德鲁克说21世纪的一个难题是知识工作者的管理,是因为很多时候工作的成果,付出的努力无法量化。对此我想说说在自己身边,技术工作中遇到的不合理的地方。

协作的诅咒

协作成为一种时尚,公司鼓励大家成为优秀的企业公民,无时不刻互相帮助,是因为组织存在的意义就在于人们能共同完成一个人无法单独完成的事情。和同事交流能够激发更有价值的见解。

但是很多时候我们被无穷无尽的邮件,消息,流程所打扰,消耗大量时间与人互动,无法在工作时间完成任务,只能加班加点或者把工作带回家。

协作的最大问题在于,它让“深度工作”无法展开,或者变得很困难。“深度工作”是我们完成工作的杀手锏:你只有聚精会神才能掌握一门困难的学科或者解决一个棘手的问题。

但是为什么很多人对于协作如此执着?一个原因是,协作远比“深度工作”更容易衡量:任何一个傻瓜都能记录下来有多人在slack上发帖或是在会议上发言,但是要发现一个独坐办公室的人是在取得突破还是无所事事,可能需要好几年。另一个原因是,管理者往往感到必须让别人看到自己在做管理,他们会自动地用会议和备忘录占满所有人的时间,而不是让他们继续各自的工作。

有些人对协作高度热衷,以至于被邀请参加每项议题,但过不了多久,这些很“热心”的“专家”会成为协作的瓶颈,在他们发言之前事情就无法定下来。而且他们对许多自身能力之外的议题拥有发言权。

明星员工

在很多公司,有一些程序员是众望所归的 ...

继续阅读

《万历十五年》 读书笔记

《万历十五年》 读书笔记

文官的阴阳

他把人们口头上公认的理想称为“阳”,而把人们不能告人的私欲称为“阴”。调和阴阳是一件复杂的工作,所以他公开表示,他所期望的不外是“不肖者犹知忌惮,而贤者有所依归”

申时行没有忽略文官的双重性格:即虽称公仆,实系主人;有阳则有阴。他必须恰如其分地处理此中矛盾。

在道德的旌旗下,拘谨和雷同被视为高尚的教养,虚伪和欺诈成为官僚生活中不可分离的组成部分,无怪乎李贽要慨乎言之:“其流弊至于今日,阳为道学,阴为富贵!”

离开了权术,这些高级官员也无精明能干之可言,而权术又总是和诚信背道而驰的。

人世间很多残酷的事都用道德的名义去施行,也是中外古今一律。

君子和小人

(海瑞)他虽然被人仰慕,但没有人按照他的榜样办事。他的一生体现了一个有教养的读书人服务于公众而牺牲自我的精神,但这种精神的实际作用却至为微薄。

我们的先儒从来就把人类分成君子和小人,前者具有高尚的道德教养,后者则近似于禽兽。这种单纯的思想,固然可以造成许多个人生活中的悲剧,可是也使我们的传统文化增添了永久的光辉。

道德技术法律

《万历十五年》指出道德非万能,不能代替技术,尤不可代替法律,但是从没有说道德可以全部不要,只是说道德的观点应当远大。凡能先用法律及技术解决的问题,不要先就扯上了一个道德问题。道德是一切意义的根源,不能分割,也不便妥协,如果道德上的争执持久不能解决,双方的距离越来越远 ...

继续阅读

树莓派使用VPN科学上网

树莓派使用VPN科学上网

我们已经可以把树莓派当做无线路由器来上网,现在我们进行下一阶段的工作。如何科学上网,让连接wifi的所有设备都可以科学上网。

网段

tplink wan 192.168.1.2 网关 192.168.1.1 连接光猫,自动获取IP
tplink lan 192.168.0.1
tplink lan dhcp 192.168.0.100~192.168.0.199/255.255.255.0
raspberrypi eth0 192.168.0.101
raspberrypi wlan0 172.24.1.1
raspberrypi wlan0 dhcp ...

继续阅读

把树莓派当做无线路由器

把树莓派当做无线路由器

最新的Raspberry Pi 3开发板上提供了wifi模块,我在想是不是有可能把树莓派当做一个无线路由器使用?最后发现其实很简单,因为板载的BCM43438 芯片是有开源驱动的(brcmfmac),如果安装最新的raspbian,默认驱动已经安装好了,最麻烦的驱动问题迎刃而解。

OS环境

安装最新的raspbian,相当于debian 8 jessie arm版本,安装的过程不再赘述。

RASPBIAN JESSIE
Full desktop image based on Debian Jessie
Version:May 2016
Release date:2016-05-27
Kernel version:4.4

网络环境

network

用网线把树莓派和tp-link的lan口连接起来,然后在tp-link的设置当中,IP与MAC绑定设置,把树莓派的IP地址固定为一个地址,我设置的是192.168.0.101。

软件包

sudo apt-get install hostapd dnsmasq

简单说明一下这两个包的功能:
hostapd ...

继续阅读

货币基金薅羊毛记

货币基金薅羊毛记

在6月底的时候货币基金出现大幅度折价,买入赎回可以薅羊毛。下面记录一下毛羊毛的过程。

鹏华添利

交割单记录如下

成交日期 证券名称 操作 成交数量 成交均价 成交金额 发生金额
20160629 鹏华添利 证券买入 1500 99.958 149937 -149937
20160629 鹏华添利 交收资金冻结 -1500 0 0 0
20160629 鹏华添利 交收证券冻结 1500 99.957 0 0
20160630 鹏华添利 ETF现金替代退款 0 99.988 150008.81 150008.81
20160630 鹏华添利 交收证券冻结 -1500 0 0 0
20160630 鹏华添利 ...

继续阅读

年度归档