postgresql查询当天内所有数据/指定日期所有数据 unix timestamp转换相关

版权声明

由于数据库中所有日期数据我存储是utc时间(unix timestamp with timezone),而用户大部分为非UTC时区用户,所以查询当天所有数据,指定日期所有数据少有些许繁琐。

查询当日内所有数据:

def check_order():
    sql = """
    SELECT * FROM table_name
WHERE 
(DATE_PART('day', (order_date::TIMESTAMP AT TIME ZONE 'Asia/Tokyo') 
- 
(now()::TIMESTAMP AT TIME ZONE 'Asia/Tokyo')) = 0 )
;
    """ 
    data = pgsql.selectAll(sql)
    return data

查询指定日期所有数据:

def check_order(date):
    sql = """
    SELECT * FROM table_name
WHERE 
(DATE_PART('day', (order_date::TIMESTAMP AT TIME ZONE 'Asia/Tokyo') 
- 
('%s'::DATE AT TIME ZONE 'Asia/Tokyo')) = 0 )
;
    """ % date 
    data = pgsql.selectAll(sql)
    return data

返回的date也是utc时间,如果需要显示指定时区时间可以:

SELECT xxx,xxxx,order_date AT TIME ZONE 'Asia/Tokyo' FROM table_name

关于flask-xcaptcha的神奇bug

今天在写🐎的时候发现,如果是下面这个结构:

<table>
   <form action="{{ url_for('test') }}" method="POST">
        <input type="hidden" name="csrf_token" value="{{ csrf_token() }}"/>
        {{ xcaptcha }}️️
        <button type="submit" class="btn btn-primary">Submit</button>
    </form> 
</table>

把form套在table里面会导致xcaptcha.verify = False
具体发病原因没仔细研究,做个记录。

 

Centos7 安装MySQL5.6 php5.6 nginx1.10 邮件服务 以及vhost脚本

这个脚本主要是我用来一键配置服务器用的。

主要包括nginx1.10 php5.6 mysql5.6 postfix opendkim。

以及dropbox备份,虚拟主机添加脚本。

可以自动配置满分的邮件服务器,DNS那块请参考别的教程配置一下,dkim的TXT记录在/root/’yourhostname’-dkim-signature_default.txt,用之前修改hostname,rDNS也要修改。

linode vultr 应该都是粘贴上就能直接用的。

nginx配置在/etc/nginx

php.ini在/etc下

php-fpm也在/etc下

有问题可留言咨询。

閱讀全文 Centos7 安装MySQL5.6 php5.6 nginx1.10 邮件服务 以及vhost脚本

写给在帝都想快速增驾摩托本的老司机们的指南 北京 增驾摩托 增驾D

起初啊,我也对骑摩托没啥兴趣,可是在帝都的各位老司机们想必都见过当你开着车堵在三环上,一辆辆摩托车快速从你车边擦肩而过,这种爽快感,正是常年经受拥堵的老司机们心中所向往的。 閱讀全文 写给在帝都想快速增驾摩托本的老司机们的指南 北京 增驾摩托 增驾D

Arduino UNO,Leonardo,Pro Micro,Nano 测试nRF24L01(SI24R01)方法

买了10个SI24R01,想做点好玩的用,但是怕用的时候才发现模块有问题,于是到处找测试方法,看了看论坛的帖子,挨个试了一次都测试不通,于是通过Google找到了一个可以在Arduino UNO,Leonardo,Pro Micro,Nano测试的方法。 閱讀全文 Arduino UNO,Leonardo,Pro Micro,Nano 测试nRF24L01(SI24R01)方法

CentOS7 服务器文件双向同步方案

主要参考了http://maxsum.me/archives/65/这篇文章
感谢这篇文章的作者
另外还需要感谢同事亮哥 解答了我很多的问题 这个脚本也是在亮哥指点下完成的
众所周知,由于CentOS7改了很多东西,有许多东西更蛋疼了。。。
找了很多文件同步的方案,最终确定使用了Unison+inotify-tools。
Unison是一套双向同步软件,可以实现跨平台的双向同步,但是不带文件修改检测。
inotify 是 Linux 自带的一套监控文件变化的工具,配合 Unison 使用,可以实现实时同步。
不多啰嗦,我就直接给自动化部署脚本了。 閱讀全文 CentOS7 服务器文件双向同步方案