-
django admin框架使用系列之三:扩展user model
django 自带的权限框架,其中auth_user表的字段,很难满足正常的需求,因此需要扩展,至于扩展,一般有如下几种选择:1. 直接修改django 源码,修改User class 的定义,以及各种方法等,然后把数据库auth_user表里的字段扩展到与自己需求一致.(源代码在:django.contrib.auth.models import User),这种方式,每次升级django都得很小心.2. 把django 的user以及认证部分的源代码拷贝到自己的app下面,然后修改,配置,这样就不需要改动django的代码了.但如果你要升级django ,就可能有麻烦
Date: 2012-12-20 View: 10860
-
django admin框架使用系列之二:注册自定义类,并配置显示样式
在上一片文章(django基本环境搭建),已经把django admin 的环境搭建起来了,但进入管理界面之后,只能看到系统自带的user,group 管理,还没有与自己业务相关的表等管理.所以这一讲的主要内容,就是讲如何注册自定义的类到admin中,配置admin 的display_list,显示的fileds,配置search框,配置filter过滤等.
Date: 2012-12-18 View: 5008
-
django admin框架使用系列之一:配置djang admin环境
django的三大特点:一是orm,二是模板,三是admin管理框架.最近在做一个内部的小系统,边学边做,于是就有了这些学习记录, 用django admin 来搭建环境,可以减少很多工作量,常用表的增删改查,基本全部有现成的,不需要你写代码,只需要稍做配置就可以了,另外django admin 的模板也是可以扩展的,如果不能满足自己需要的,可以定制扩展。
Date: 2012-12-18 View: 5056
-
mybatis实战教程(mybatis in action)之九:mybatis 代码生成工具的使用
mybatis 应用程序,需要大量的配置文件,对于一个成百上千的数据库表来说,完全手工配置,这是一个很恐怖的工作量. 所以mybatis 官方也推出了一个mybatis代码生成工具的jar包. 今天花了一点时间,按照 mybatis generator 的doc 文档参考,初步配置出了一个可以使用的版本,我把源代码也提供下载,mybatis 代码生成工具,主要有一下功能:1.生成pojo 与 数据库结构对应2.如果有主键,能匹配主键3.如果没有主键,可以用其他字段去匹配4.动态select,update,delete 方法5.自动生成接口(也就是以前的dao层)6.自动生成sql mapper,增删改查各种语句配置,包括动态where语句配置7.生成Example 例子供参考
Date: 2012-12-16 View: 23941
-
python 日期相关的各种操作总结
用 Python 做项目时,经常会遇到与日期转换相关,日期计算相关的功能,动不动就要去查python手册,感觉麻烦,因此把自己常用的一些东西,总结了一下,总体说来到目前为止遇到如下一些需求:1. 用python 把datetime转成字符串2. 用python 把字符串转成datetime3. 用python 把字符串转成时间戳形式4. 用python 把时间戳转成字符串形式5. 用python 把把datetime类型转外时间戳形式6. 用python 计算两个日期之间的差7. 用python 计算两个日期的 timestamp 差值8. 用python 比较两个日期的大小9. 指定日期加上 一个时间段,天,小时,或分钟之后的日期
Date: 2012-12-14 View: 8350
-
django,ueditor 完整集成的例子(附源码下载)
有django 集成第三方的编辑器,我在前面的文章中介绍过。其实介绍得比较详细了,但由于机器环境不同,以及settings 配置的不同,导致部分阅读者按照我说的方法,部分功能不能实现。但也有部分按照我的文章配置成功。在这里我直接 附上源代码,可以直接运行测试的。我是在 eclipse,pydev 下测试的,当然,你可以直接用命令行测试.
Date: 2012-12-12 View: 10456
-
mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句
mybatis 的动态sql语句是基于OGNL表达式的。可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类:1. if 语句 (简单的条件判断)2. choose (when,otherwize) ,相当于java 语言中的 switch ,与 jstl 中的choose 很类似.3. trim (对包含的内容加上 prefix,或者 suffix 等,前缀,后缀)4. where (主要是用来简化sql语句中where条件判断的,能智能的处理 and or ,不必担心多余导致语法错误)5. set (主要用于更新时)6. foreach (在实现 mybatis in 语句查询时特别有用)
Date: 2012-12-11 View: 15687
-
用django实现redirect的几种方法总结
用django开发web应用, 经常会遇到从一个旧的url转向一个新的url。这种隐射也许有规则,也许没有。但都是为了实现业务的需要。总体说来,有如下几种方法实现 django的 redirect。1. 在url 中配置 redirect_to 或者 RedirectView(django 1.3 版本以上)2. 在view 中 通过 HttpResponseRedirect 实现 redirect3. 利用 django 的 redirects app实现
Date: 2012-12-10 View: 8335
-
mybatis实战教程(mybatis in action)之七:实现mybatis分页(源码下载)
上一篇文章里已经讲到了mybatis与spring MVC的集成,并且做了一个列表展示,显示出所有article 列表,但没有用到分页,在实际的项目中,分页是肯定需要的。而且是物理分页,不是内存分页。对于物理分页方案,不同的数据库,有不同的实现方法,对于mysql 来说 就是利用 limit offset,pagesize 方式来实现的。oracle 是通过rownum 来实现的,如果你熟悉相关数据库的操作,是一样的很好扩展,本文以mysql 为例子来讲述.先看一下效果图(源代码在文章最后提供下载)
Date: 2012-12-09 View: 37630
-
java jdbc连接各种数据库的方式大全
Java Database Connectivity (JDBC),用来与数据库打交道,本文主要总结了 jdbc与mysql,oracle,postgresql 连接的方式,并总结了 Statement, PreparedStatement , CallableStatement 以及事务 JDBC Transaction 的处理
Date: 2012-12-06 View: 4708
-
django 程序ajax提交的方法,避免csrf错误
django为了安全起见,加入 csrf_token , 由此可以避免恶意提交,大家熟悉的workpress,用过的人都知道,每天都有很多垃圾评论,留言。管理很麻烦,虽然有插件可以过滤,但也不是很好。不过不用 django ajax 提交,为了避免出现 csrf toke 错误,可以采取以下方法
Date: 2012-12-05 View: 11075
-
python两个 list 获取交集,并集,差集的方法.
有时候,为了需求,需要统计两个 list 之间的交集,并集,差集。查询了一些资料,现在总结在下面:1. 获取两个list 的交集2. 获取两个list 的并集3. 获取两个list 的差集
Date: 2012-12-04 View: 57975
-
UltraEdit 打开文件标签页不见了的解决方法
一直用ultraedit 做为文本文件打开工具,或者编程时的辅助工具,这个东西确实很方便,但突然有一天,我也不知道做了什么,从此打开文件都是单窗口,每打开一个文件就开启一个ultraedit.exe ,打开很多文件的话,开启很多个,很不爽。原来打开很多文件,都在各自的tab页里面,只有一个进程。后来找到一个方法,可以恢复回来.点击 菜单:高级--配置(工具栏/菜单,选择定制)。图片链接图片链接
Date: 2012-12-03 View: 10682
-
django日志logging 的配置以及处理
日志在程序开发中是少不了的,通过日志我们可以分析到错误在什么地方,有什么异常。在生产环境下有很大的用处。在java 开发中通常用 log4j,logback 等三方组件。那么在 django中是怎么处理日志的呢。django 利用的就是python 提供的 logging模块. 在前面有一篇文章专门讲过 python的 logging(看这里) ,但django中要用logging ,还得有一定的配置规律
Date: 2012-11-29 View: 13865
-
python中metaclass详解
什么是 metaclass.metaclass (元类)就是用来创建类的类。在上一篇文章里我们提到过,可以用如下的一个观点来理解什么是metaclass:MyClass = MetaClass()MyObject = MyClass()metaclass是python 里面的编程魔法
Date: 2012-11-28 View: 4084


