阿小信大人的头像
Talk is cheap. Show me the code. Linus Torvalds

Django自定义模板过滤器2014-09-02 04:39

首先给出方法:

:::python
# -*- coding: utf-8 -*-
from django.template import Library
register = Library()

# django模板中没有'world' in 'hello world'这样的
@register.filter
def contains(value, arg):
return arg in value.decode('uft-8')
# 用法 {% if str|contains:'你'

......
#Python#   #django 评论[0]阅读全文[1872]

jQuery表单验证时name值相同时只能验证第一个值2014-09-02 04:38

有如下表单:

:::html




在这里我的name每个在后台都必须要为相同的才行,最后形成一个{ choice : [val1, val2, ...] }这样的字典,可以动态增加input个数。

在用jquery.validate.js验证时,只能验证第一个choice,后面的不能验证,解决办法是先把它写成不同的,然后在提交时先验证,验证完成后再改变dom内容就好了。

在validate函数里面添加如下代码:

:::javascript
submitHandler: function(form) {

......
#WEB/前端#   #jquery 评论[0]阅读全文[2029]

利用Python字典获得最大值2014-09-02 04:37

有日志文件如下:

svn://192.168.1.7/projects/Project3/server/pyscript/task/duplicate/story25.py@70000
svn://192.168.1.7/projects/Project3/server/pyscript/task/newtask/testory.py@71779
svn://192.168.1.7/projects/Project3/server/pyscript/task/newtask/testory.py@7000
svn://192.168.1.7/proj

......
#Python#   评论[0]阅读全文[2540]

Python的线程在shell中会显示返回值2014-09-02 04:36

代码如下:

:::python
>>> def p(i):
... print i
...
>>> import thread
>>> for i in range(4):
... thread.start_new_thread(p, (i,))
...
100400
78201
4444
243883
>>>

如上,打印出的竟然是随机值不是0123。后来发现是因为start_new_thread()有返回值,输出值和返回值在终端都会

......
#Python#   评论[0]阅读全文[2010]

jQuery选择器2014-09-02 04:35

基本选择器

:::javascript
//选择 id为 one 的元素
$('#btn1').click(function(){
$('#one').css("background","#bfa");
});

//选择 class 为 mini 的所有元素
$('#btn2').click(function(){
$('.mini').css("background","#bfa");
});

//选择 元素名是 div 的所有元素
$('#btn3').

......
#WEB/前端#   #jquery 评论[0]阅读全文[1868]

Python中re模块常用函数2014-09-02 04:33

:::python
##escape(string) 返回的字符创所有非字符数字字符都带有反斜杠。
>>> escape('http://ashin.sinaapp.com/blog')
'http\\:\\/\\/ashin\\.sinaapp\\.com\\/blog'
>>>


##findall(pattern, text [, flag]) 返回text中与pattern匹配的值,如果包含分组,将返回与分组匹配的文本列表,如果不止一个分组,那么列表中的每项都是一个元组。
>>> text='

......
#Python#   #regex 评论[0]阅读全文[2538]

namedtuple命名元组2014-09-02 04:33

普通元组的常见缺陷是需要使用数字下标访问元素,当元素个数太多时就会引起混淆,命名元组可以解决这个烦恼。

:::python
>>> from collections import namedtuple
>>> InetAddr = namedtuple('ia',['host', 'port'])
>>> a = InetAddr('ashin.sinaapp.com','80')
>>> a
ia(host='ashin.sinaapp.com', port='80')
>>> a.host
'ashin.s

......
#Python#   评论[0]阅读全文[2125]

itertools迭代器2014-09-02 04:32

:::python
>>> from itertools import *
>>> c=chain([1,2,3],[4,5,6])
>>> c

>>> for i in c:print i
...
1
2
3
4
5
6
>>> #chain将一组迭代器链接起来形成一个新的迭代器,第一个迭代器用完则从第二个迭代器再生成,直到用完。
...
>>> for i in combinations([1,2,3,4], 2):print i

......
#Python#   评论[0]阅读全文[2104]