ruby中block, proc, lambda概念有点绕, 举个场景来讲一下这中设计的可能原因,帮助理解

阅读更多

基础

  1. 安装django以后就可以用django-admin
    1. 创建project: django-admin startproject HelloWorld
    2. 创建app: ``
  2. 引入当前目录的内容: from . import views
  3. 安装xmlsec失败,先安装依赖: brew install libxml2 libxmlsec1 pkg-config , https://blog.csdn.net/yuyexiaohan/article/details/107145624
  4. Disallowed Host: Invalid HTTP_HOST header: '127.0.0.1:8000'. You may need to add '127.0.0.1' to ALLOWED_HOSTS
    1. 修改settings.py->’ALLOWED_HOSTS’
  5. django admin app: 'django.contrib.admin'
  6. django admin后台地址: http://localhost:8000/admin
  7. django admin的默认账号,没有。 需要通过命令创建: python manage.py createsuperuser
  8. 给django manager添加命令Django : How can I see a list of urlpatterns?
  9. django admin列出所有的urls(rails routes等价物), 需要装django-extension:
    1. pip install django-extensions
    2. 安装app, settings.py->INSTALLED_APPS, 添加'django_extensions',
  10. Linkedin登录:
    1. 官方django例子, 需要把抛错的app删除,然后配置key&secret, 见下面.
    2. python social auth settings ~~~python # settings.py SOCIAL_AUTH_LINKEDIN_OAUTH2_KEY = ‘77xqioxxxxxxxx’ SOCIAL_AUTH_LINKEDIN_OAUTH2_SECRET = ‘zILxe7jcxxxxxxxx’ SOCIAL_AUTH_LOGIN_REDIRECT_URL = ‘/home/’ SOCIAL_AUTH_LOGIN_URL = ‘/’

阅读更多

磁盘清理

  1. 找大文件,大于1G的文件: find / -size +1000M
  2. container log也容易积累很大: /data/docker/containers/, 遇到过一个25G的日志
  3. ls -lh 查看日志文件大小
  4. 切换到root下清除日志: sudo -i; echo "" > /path/to/logs
  5. 或者用find来删除: find /var/lib/docker/containers/ -type f -name "*.log" -delete 3.

阅读更多

nodejs 13.2之后支持ES6 class语法, 支持类的定义,支持import语法。有两种方法可以打开这种语法支持:

阅读更多

水稻田里种了葧荠。看着葧荠的植株就很开心,它和一般的植物长得完全不一样,表面光滑,就像一根绿色的细吸管,超长,超直的那种,从水里长出来,整整齐齐的。表面看是一根吸管,可是里面有很多白色的隔膜,吸管内部形成无数的小气腔。用手捏着葧荠根部,另外一只手从根部往顶部捋过去,那些气腔哔哔叭叭全爆了,留下孩子呵呵傻笑,有时候傻笑可以用来形容简单的幸福吧。

阅读更多

这是写rails静态代码分析的。怕被误认为是分析rails framework的文章,所以标题取为’ruby静态代码分析’.

阅读更多

可以通过gem直接dump/restore数据库,省得去记各种数据的dump,restore命令。缺点就是速度非常慢。rails就是慢。好处也非常明显,可以跨数据库。

阅读更多

Taro 3出来有段时间了,有一个小程序用Taro 2写的,升级了一下,前前后后花了几个月时间,中间还失败了几次,踩了不少坑。

阅读更多

一直很想研究Babel,给baby写插件,改JS语法. 最近看了一篇文章,感觉非常不错.于是借此机会试了一把,添加的语法很简单,就是给JS里面的数字加上一个计量单位,比如说1k代表1000,1m代表百万, 1b代表10亿,这样子呢,就是读起来更简单,更方便易懂。

阅读更多

active_record下标访问([], read_attribute, write_attribute)支持表字段的访问, 不支持association的直接解析, 下表访问和read_attribute是同一个概念. send是通用的方法调用,包含了read_attribute.大部分情况下,数据库字段操作应该用read_atttribute, write_attribute, 因为monkey_patch的问题, update, send会不确定性地失效。方法访问也一样.

阅读更多