babun安装后记

官网下载:babun

zsh配置:oh-my-zsh 安装和配置方法

安装完 zsh-autosuggestions 插件后,自动提示出来的文字颜色和背景色太近,看不清楚,到选项中(右击标题栏)把背景色调黑一点就行了。

可以考虑换一下cygwin的源:

Babun Python配置。因为Babun默认的Python是python2,于是先删除了连接再根据我系统中Python所在文件夹创建了python的链接:

爱快 iKuai 路由器双外网配置记录

公司旧路由越来越不稳定,后期要有一批人员进入,于是升级一下路由。

原先的组网情况:

  • 一台工控机,安装 iKuai 软路由。专线网络(有固定IP)。
  • 一台家用无线路由,办公用(ADSL)。

感觉 iKuai 还挺稳定,自从安装过后没有重启过也没有卡过,因此想用 iKuai 的硬件试一下。因此买了 iKuai A320

继续阅读

mysql全局修改sql_mode

  1. mysql数据库的中有一个环境变量sql_mode,定义了mysql应该支持的sql语法,数据校验等。可以通过以下方式查看当前数据库使用的 sql_mode:

5.7.22 版本中,结果是 ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

  1. session 修改

  1. 全局修改。打开 mysql.cnf ,在 [mysqld] 下面添加:

apache启用ssl安全访问

首先申请 ssl证书,可以在 腾讯云阿里云利用Let’s Encrypt创建 。这里以 腾讯云 为例。

  1. 启用 ssl 模块

  1. 将得到的证书文件放到确定的目录,如统一放在 /etc/apache2/ssl
  2. 就地复制 default-ssl.conf ,然后修改新文件中的 域名DocumentRoot证书路径,如:

  1. 修改站点根目录下 .htaccess 文件,添加以下代码,实现 http 自动跳转到 https:

使用vim时有乱码的解决办法

使用 阿里云ECS 或者 VPS 时,因为安装的系统是 英文版linux,所以vim默认中文件显示乱码,解决办法是:编辑 /etc/vim/vimrc~/.vimrc,添加以下代码:

linux中安装xmind8并设置默认打开方式

  1. 下载最新版的 xmind8 ,文件是 zip 格式,解压放到任一目录(我习惯放在 ~/bin)。

  2. 运行需要 jre 环境,安装: sudo apt install openjdk-8-jre(不同系统可能不一样,如果有多个版本可以选择高版本)。

  3. 运行时出现 发生了错误。请参阅日志文件,打开提示中的日志文件,发现有一行 Caused by: java.lang.ClassNotFoundException: javax.annotation.PreDestroy cannot be found by org.eclipse.e4.core.di_1.6.0.v20160319-0612,是因为缺少组件。但是其实组件已经安装了,使用以下方法解决:打开运行目录 XMind_amd64,打开 XMind.ini,文件最后添加一行 --add-modules=ALL-SYSTEM

  4. 添加启动器

      1. 在 XMind_amd64 目录中,添加文件 XMind.sh,添加以下内容(注意目录路径要和自己的实际情况一致):

    cd ~/bin/xmind-8-update7-linux/XMind_amd64
    ./XMind $*

    添加运行权限。

    1. 在目录 /usr/share/applications(或者 ~/.local/share/applications,此目录仅当前用户可见) 添加文件 xmind.desktop,添加以下内容:

      无需添加运行权限。

  5. 通过文件直接打开(以 mint 为例):右键 .xmind 文件,选择“属性”->“打开方式”,选择“XMind”,点击“设为默认”。这步操作不建议设置。xmind文件实际上是一个压缩包,如果默认使用xmind打开,所有压缩包都会如此,反而增加麻烦。建议添加到打开方式列表就行。


  • Exec 属性结尾添加 %F 可以让启动器显示在“打开方式”列表中。
  • Categories 常见类型:
    • Development
    • Office
      可同时有多个,用英文分号 ; 隔开

laravel 中怎样在 request 类中使用 sometimes 验证

Laravel 验证规则中的 exists 和 unique 应该怎么使用

exists:table,column

验证字段的值是否存在于数据库指定表的指定列中,如果不存在将会抛出异常,这里是关于 exists 规则的 详细说明

基本用法

验证 users 表中是否存在 email 等于指定的 email 值的记录

  • 'email' => 'exists:users'
  • Rule::exists('users')

自定义列名

验证 users 表的 email_address

  • 'email' => 'exists:users,email_address'
  • Rule::exists('users','email_address')

自定义数据库连接

验证指定数据库连接的 users 表

  • 'email' => 'exists:connection.users,email'

附加 WHERE 条件(可以有多个)

除了验证 email_address 还需要验证 role 等于 admin

  • 'email' => 'exists:users,email_address,role,admin'
  • Rule::exists('users','email_address')->where('role','admin')

! 表示不等于

  • 'email' => 'exists:users,email_address,role,!admin'
  • Rule::exists('users','email_address')->whereNot('role','admin')

NULL 在 MySQL 中是通过 IS 判断的,这里注意不用 IS

  • 'email' => 'exists:users,email,deleted_at,NULL'
  • Rule::exists('users','email_address')->whereNull('deleted_at')

对不等于 NULL 的情况不能使用 !,而是使用 NOT_NULL

  • 'email' => 'exists:users,email,deleted_at,NOT_NULL'
  • Rule::exists('users','email_address')->whereNotNull('deleted_at')

unique:table,column,except,idColumn

验证字段的值在数据库指定表的指定列中是否唯一,如果不唯一将会抛出异常,这里是关于 unique 规则的 详细说明

基本用法

验证指定的 email 值在 users 表的 email 中是否唯一

  • 'email' => 'unique:users '
  • Rule::unique('users')

自定义列名

验证 users 表的 email_address

  • 'email' => 'unique:users,email_address'
  • Rule::unique('users','email_address')

自定义数据库连接

验证指定数据库连接的 users 表

  • 'email' => 'unique:connection.users,email_address'

排除某条记录

排除 users 表中 id 等于 $userId 的记录,使用场景是用户修改 email 时,需要验证自身除外的其他用户是否已使用了该 email

  • 'email' => 'unique:users,email_address,'.$userId
  • Rule::unique('users','email_address')->ignore($userId)

排除时指定 primary_key

排除 users 表中 user_id 等于 $userId 的记录

  • 'email' => 'unique:users,email_address,'.$userId.',user_id'
  • Rule::unique('users','email_address')->ignore($userId,'user_id')

附加 WHERE 条件(和 exists 的 WHERE 条件相同)

由于排除是在 WHERE 条件之前的,如果指定了 WHERE 条件,但是没有指定排除,需要把第三个参数设为 NULL

  • 'email' => 'unique:users,email_address,NULL,id,role,admin'
  • Rule::unique('users','email_address')->where($role,'admin')