自动生成数据库结构文档,文档格式为 Makrdown。
- 自动生成主文档: 数据表,字段说明
- 自动生成变更日志
- 记录数据表的添加、删除
- 记录字段的添加、删除
""" | |
参考: [Django logging settings](http://www.lexev.org/en/2013/django-logging-settings/) | |
代码: https://gist.github.com/st4lk/6725777 | |
修改内容: | |
* formatters: 分成 default_formatter, debug_formatter | |
* NullHandler: 采用 logging 模块的 NullHandler | |
* 格式中增加毫秒数: %(msecs)s | |
* 增加 django.db.backends 的配置,把 SQL 记录在日志文件里面 |
# -*- coding: utf-8 -*- | |
""" | |
使用 py.test -s test_setup_teardown.py 运行 | |
""" | |
import os | |
def multiply(x, y): | |
return x * y | |
outputs = ["", "", "----"] |
#!/usr/bin/env python | |
# -*- coding: utf-8 -*- | |
u"""MySQL Drop Tables | |
Usage: | |
mysql_drop_tables.py [-y] MYSQL_URL TABLE_PATTERN ... | |
Options: | |
-y 直接执行,不提示用户 |
from ast import literal_eval | |
import urlparse | |
def parseValue(value): | |
try: | |
return literal_eval(value) | |
except: | |
pass | |
try: | |
return literal_eval('"%s"' % value) |
# -*- coding: utf-8 -*- | |
u'''合并对象,特点: | |
- 字典对象并操作 | |
- 其他对象替换 | |
可以合并的对象包括: | |
- 字典 | |
- 模块 |
# -*- coding: utf-8 -*- | |
u'''合并字典,可用于配置信息合并 | |
合并的原则是后来的数据优先 | |
''' | |
def mergeable(target, source): | |
''' | |
>>> from collections import OrderedDict |
# -*- coding: utf-8 -*- | |
"""判断点是否在多边形内部 | |
参考: https://github.com/flaviamissi/Point-Inside-Polygon | |
""" | |
def get_number_of_intersected_sides(self, point, polygon): | |
crossed_by_left = 0; crossed_by_right = 0 | |
for i in range(1, len(polygon)): | |
if point[1] in range(polygon[i-1][1], polygon[i][1]+1) or point[1] in range(polygon[i][1], polygon[i-1][1]+1): |
from collections import namedtuple | |
from urllib import urlencode | |
import os | |
FormFile = namedtuple('FormFile', 'filename, data') | |
def encode_form(fields, multipart=False, headers=None): | |
headers = headers or {} |
import os | |
import tempfile | |
def dir_writeable(dir): | |
try: | |
(fd, name) = tempfile.mkstemp(dir=dir) | |
os.close(fd) | |
os.unlink(name) | |
except IOError: | |
return False |