Skip to content

Instantly share code, notes, and snippets.

View ruter's full-sized avatar
:shipit:
Thinking

Ruter ruter

:shipit:
Thinking
View GitHub Profile
@ruter
ruter / upload_file.py
Last active December 19, 2018 11:23
[上传文件 Controller] Odoo 上传文件 Controller #Odoo
@http.route('/api/v1/mro/upload_file', type='http', auth="user", method=['POST'], website=True, csrf=False)
def upload_requirement_file(self, ufile, res_id=0, res_model, **kwargs):
file = ufile
if file:
# 附件模型
Attachment = request.env['ir.attachment']
# 创建附件
attach = Attachment.create({
'name': file.filename,
'res_model': res_model,
@ruter
ruter / delete_file.py
Last active March 23, 2018 05:39
[删除文件 Controller] Odoo 删除文件 Controller #Odoo
@http.route('/api/v1/mro/delete_file', type='json', auth="user", method=['POST'], website=True)
def del_requirement_file(self, **kwargs):
data = request.jsonrequest
if data:
attach_ids = data.get('ids', None)
domain = [('id', 'in', attach_ids)]
res_id = data.get('res_id', None)
res_model = data.get('res_model', None)
if res_id:
domain.append(('res_id', '=', res_id))
@ruter
ruter / res_config.py
Last active March 23, 2018 09:10
Odoo 中继承基础设置模块并增加基础配置项 #Odoo
# -*- coding: utf-8 -*-
import logging
from odoo import models, fields, api
_logger = logging.getLogger(__name__)
@ruter
ruter / py_datetime.py
Last active March 26, 2018 12:37
Python 中对日期和时间的处理方法 #Python
import datetime
utc8_datetime = datetime.datetime.utcnow() + datetime.timedelta(hours=8)
min_datetime = datetime.datetime.combine(utc8_datetime.date(), datetime.time.min)
@ruter
ruter / serializeParams.js
Last active March 27, 2018 02:50
使用 jQuery 的 param() 方法创建数组或对象的序列化表示,该序列化值可在进行请求时在 URL 查询字符串中使用,可避免如 '#' 和 '%' 等特殊字符的出现可能导致的问题 #JavaScript #jQuery
var params = {name: 'Lucy', addr: 'Street#233'}
var res = $.param(params)
console.log(res) // name=Lucy&addr=Street%23233
@ruter
ruter / index.js
Last active April 19, 2018 03:49 — forked from edokeh/index.js
佛祖保佑,永无 BUG
//
// _oo0oo_
// o8888888o
// 88" . "88
// (| -_- |)
// 0\ = /0
// ___/`---'\___
// .' \\| |// '.
// / \\||| : |||// \
// / _||||| -:- |||||- \
@ruter
ruter / countElements.js
Last active April 13, 2018 06:03
使用 reduce 统计一个数组中各个元素出现的次数
const arr = [4, 5, 3, 1, 6, 3, 4, 1]
let res = arr.reduce((countObj, ele) => {
if (ele in countObj) {
countObj[ele]++;
} else {
countObj[ele] = 1;
}
return countObj;
}, {});
@ruter
ruter / accdion.html
Last active April 23, 2018 12:19
使用 jQuery 实现手风琴效果
<div class="nav">
<ul>
<li class="nav-item">
<a href="javascript:;"><i class="my-icon nav-icon icon_1"></i><span>网站配置</span><i class="my-icon nav-more"></i></a>
<ul style="display: none;">
<li><a href="javascript:;"><span>网站设置</span></a></li>
<li><a href="javascript:;"><span>友情链接</span></a></li>
<li><a href="javascript:;"><span>分类管理</span></a></li>
<li><a href="javascript:;"><span>系统日志</span></a></li>
</ul>
@ruter
ruter / intcomma.js
Created April 28, 2018 01:24
用 jQuery 为数字添加或删除千分符
// 为数字添加千分符
function intcomma (num) {
if ($.isNumeric(num)) {
var DIGIT_PATTERN = /(^|\s)\d+(?=\.?\d*($|\s))/g;
var MILLI_PATTERN = /(?=(?!\b)(\d{3})+$)/g;
return num.toString().replace(DIGIT_PATTERN, function (m) {
return m.replace(MILLI_PATTERN, ',');
});
} else {
return num;
@ruter
ruter / formatStr.js
Created April 28, 2018 01:32
使用非 ES6 语法,没有字符串模板时,对字符串进行插值格式化
function format (source, args) {
var result = source;
if (typeof(args) == "object") {
if (args.length == undefined) {
for (var key in args) {
if (args[key] != undefined) {
var reg = new RegExp("({" + key + "})", "g");
result = result.replace(reg, args[key]);
}
}