开源地址:https://github.com/home-assistant
官网:https://www.home-assistant.io/
Homeassistant是一个基于python3语言的开源家庭自动化平台,它可以监控你家里的所有设备,并实现自动化控制;它尤其适合运行在开源硬件平台树莓派上。
我站在青青的牧场
开源地址:https://github.com/home-assistant
官网:https://www.home-assistant.io/
Homeassistant是一个基于python3语言的开源家庭自动化平台,它可以监控你家里的所有设备,并实现自动化控制;它尤其适合运行在开源硬件平台树莓派上。
我国现在使用的18位身份证号码标准在国家质量技术监督局于1999年7月1日实施的GB11643-1999《公民身份号码》中做了明确的规定,其编排规则如下:
(1)前1、2位数字表示:所在省份的代码;
(2)前3、4位数字表示:所在城市的代码;
(3)前5、6位数字表示:所在区县的代码;
(4)前7-14位数字表示:出生年月日;
(5)前15-16位数字表示:所在地派出所代码;
(6)第17位数字表示性别:奇数表示男性,偶数表示女性;
(7)第18位数字是校验码:检验码可以是0-9的数字,有时也用X表示。
其中第18位数字是根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的。
字段注释是一个JSON字符串并含有以下信息:
参数名 | 作用 | 参数值 | |
---|---|---|---|
mode | 模式 | normal(默认) | |
auto | |||
manual | |||
required | 是否必填 | true(默认) | |
false | |||
format | 字段格式 | int | 整型 |
电子邮件 | |||
date | 日期 | ||
datetime | 日期时间 | ||
idcard | 身份证(中国大陆) | ||
name | 名字 | ||
mobile | 手机号(中国大陆) | ||
json | JSON | ||
intSeries | 整数序列(半角逗号相隔的数字) | ||
natural | 常规字符(字母数字及中下划线) | ||
url | 网址 | ||
ip | IP地址 | ||
ipv4 | IP地址(v4) | ||
ipv6 | IP地址(v6) | ||
chinese | 纯中文 | ||
slug | 小段网址(小写字母数字及中划线) | ||
dateRange | 日期区间 | ||
datetimeRange | 日期时间区间 |
上述表格中的mode参数,当值为auto时,表示为自动字段(如自增字段),任何校验和设置值均无效,当值为manual时,表示为手动字段
来源:https://help.jtbc.cn/php/5.0/#model/automatic.xml
先use Jtbc\Model\TinyModel;
再实例化TinyModel类
$model = new TinyModel();//缺省设置下默认为当前模块对应的数据库表//
// $model = new TinyModel('news');//直接指定一个名叫news的数据库表//
// $model = new TinyModel(new Module('universal/link'));//指定一个模块,再通过模块获取对应的数据库表//
// $model = new TinyModel(new Module('universal/tag'), 'map');//指定一个模块,再通过指定第2个子表名称来获取对应的数据库表//
// $model = new TinyModel(DBLink: 'default', genre: 'news');//通过具名参数的设置来获取对应的数据库表//
参考:https://help.jtbc.cn/php/5.0/#model/concept.xml
后记:
JTBC5.0后台云端市场已出多分类模块,有需要的可以前云安装使用,本文不再提供修改方法。
分类字段注释修改
{"type":"transfer","locked":true}
后台代码修改
/Public/news/common/diplomat/manage.php
$item -> category_title = $category -> getTitleById($item -> category);
修改成
$item -> category_title = $category -> getTitleById(json_decode($item -> category,true)[0]);
另后台分类筛选也要修改
if ($this -> guard -> role -> isSuper !== true)
{
if (!empty($myCurrentCategory))
{
$model -> where -> category -> in($myCurrentCategory);
}
else if (!empty($myCategory))
{
$model -> where -> category -> in($myCategory);
}
}
目前尚未修改,后续需要时再调整
另前台需同步修改代码
来源:https://www.jb51.net/article/202249.htm
本文实例为大家分享了JS实现拖拽功能的具体代码,供大家参考,具体内容如下
拖拽的原理:三个事件 onmousedown、onmousemove、onmousemove
1、鼠标按下,触发onmousedown,获取鼠标坐标x,y,获取元素坐标x,y
通过event.clientX、event.clientY获取鼠标位置的坐标
let x = e.clientX - box.offsetLeft; //鼠标点击坐标距离盒子左边缘的距离
let y = e.clientY - box.offsetTop; //鼠标点击坐标距离盒子上边缘的距离
2、设置元素left、top值,(元素要设置position:absolute)
box.style.left = ev.clientX - x + 'px';
box.style.top = ev.clientY - y + 'px';
3、放开鼠标取消dom事件
下面是详细代码:我只开了横向移动
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
#box {
width: 100px;
height: 100px;
background: red;
position: absolute
}
</style>
</head>
<body style="position: relative;overflow: hidden;">
<div id="box">
</div>
<script>
window.onload = function () {
let box = document.getElementById('box')
box.onmousedown = function (ev) {
let e = ev || event;
let x = e.clientX - box.offsetLeft; //鼠标点击坐标距离盒子左边缘的距离
let y = e.clientY - box.offsetTop; //鼠标点击坐标距离盒子上边缘的距离
document.onmousemove = function (ev) {
let e = ev || event;
box.style.left = ev.clientX - x + 'px';
box.style.top = ev.clientY - y + 'px';
let bodyScreenX = ev.screenX
let bodyClientWidth = document.body.clientWidth
document.onmouseup = function (ev) {
if (ev.clientX - x < 0) {
box.style.left = 0
} else if (bodyScreenX > bodyClientWidth) {
box.style.right = 0
box.style.left = bodyClientWidth - 100 + 'px'
}
document.onmousemove = null;
document.onmouseup = null;
}
}
}
}
</script>
</body>
</html>
背景:新手小白制作svg图标的经验。高手请绕行,感谢。
1.AI新建文档
配置文件web
宽度和高度建议相同,图标我们来创建正方形的。
2.在画板中制作图标
图形:建立复合路径
文字:创建轮廓
3.保存为svg格式
勾选使用画板,全部
4.设置输出参数
配置文件:svg 1.1
文字:svg
子集化:仅使用的字形
图像位置:嵌入
更多选项:
CSS属性:演示文稿属性
输出较少<tspan>元素
5.编辑保存的svg文件源码
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="160px" height="160px" viewBox="0 0 160 160" enable-background="new 0 0 160 160" xml:space="preserve">
修改为
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 160 160">
6.浏览器打开图标查看效果
至此结束。
$sql= " order by instr('," . $Ids . ",',concat(','," . $Prefix . "id,','))";
其中$Ids为id字符串,用英文逗号隔开,例如: $Ids='3,2,1,6';
其中" . $Prefix . "id 为ID字段,$Prefix是字段前缀,例如ID字段可以是n_id这样.
根据实际情况替换即可.
JTBC5.0中,上传图片功能,在已经上传过图片后,再次重新传当前文件时,无法继续上传,需要刷新页面后才能重新上传当前文件.
官方回复说是:
那是你选了一样的文件
上传监测的是onchange
是上传1个文件,又选一样的文件就是没有change
记录以作后续参考.
来源:汉化新世纪
网盘下载:(访问密码:wdja)
http://share.menglei.net/f/16922972-555672630-aa23bb
Proxifier 是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。支持64位系统,支持Xp,Vista,Win7,支持socks4,socks5,http代理协议,支持TCP,UDP协议,可以指定端口,指定IP,指定程序等运行模式,兼容性非常好。
有许多网络应用程序不支持通过代理服务器工作,因此不能用于局域网或防火墙后面。这些会损害公司的隐私和导致很多限制。Proxifier 解决了这些问题和所有限制,让您有机会不受任何限制使用你喜爱的软件。此外,它让你获得了额外的网络安全控制,创建代理隧道,并添加使用更多网络功能的权力。
Proxifier 使您可以:
1、通过代理服务器运行任何网络应用程序。对于软件不需要有什么特殊配置;整个过程是完全透明的。
2、通过代理服务器网关访问受限制的网络。
3、绕过防火墙的限制。
4、“隧道”整个系统 (强制所有网络连接,包括系统工作都通过代理服务器连接)。
5、通过代理服务器解析 DNS 名称。
6、灵活的代理规则,对于主机名和应用程序名称可使用通配符。
7、通过隐藏您的 IP 地址的获得安全隐私。
8、通过代理服务器链来工作,可使用不同的协议。
9、查看当前网络活动的实时信息(连接,主机,时间,带宽使用等)。
10、维护日志文件和流量转储。
11、获得详细的网络错误报告。
汉化使用说明:
1、此为汉化注册版,直接安装后即可使用。
2、因程序原因,少许英文不能汉化,否则会与原英文软件生成的配置文件不兼容。
3、此软件包含大量的 Unicode 资源,汉化超累,其中有好多是日志文件的信息内容,等汉化完成测试时才发现,日志文件的内容不能汉化,否则另外保存的日志文件内容不正常,不能保存中文。但在主程序中看的日志是完全正常的,因此还是将日志汉化了,毕竟最终找文件看日志的人不多。
4、此汉化无捆绑。