问题描述
数据库字段类型为 datetime,faker 格式为 Y-m-d H:i:s,factory::make() 出来的也是 Y-m-d H:i:s,但是 toArray() 之后变成了 c,c 类似 2024-01-02T03:04:05.000000Z。insert(c) 时候报了标题的信息。
解决方法
方法1:
# /config/database.php
'mysql' => [
'strict' => false, // true 改为 false
],
方法2:
# /app/Models/User.php
protected $casts = [
'created_...
分类为 后端 的文章:
安装
brew install nginx
配置文件:
/usr/local/etc/nginx/nginx.conf
用法:
brew services info nginx
brew services restart nginx
brew services start nginx
brew services stop nginx
安装日志:
Docroot is: /usr/local/var/www
The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo.
nginx will load all files in /usr/local/etc/ngin...
启用防火墙
systemctl start firewalld
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --remove-port=3306/tcp --permanent
firewall-cmd --reload
启用交换空间 swap 分区
dd if=/dev/zero of=/swapfile bs=1024k count=8192
mkswap /swapfile
swapon /swapfile
echo "/swapfile swap swap defaults 0 0" >> /etc/fstab
软件源
...
# app/Providers/AppServiceProvider.php
public function boot()
{
DB::listen(function ($query) {
$location = collect(debug_backtrace())->filter(function ($trace) {
return !str_contains($trace['file'], 'vendor/');
})->first(); // grab the first element of non vendor/ calls
$bindings = implode(", ", $query->bindings); // format t...
.env
APP_VERSION=v2.0.1 beta
app/Http/Kernel.php
protected $middleware = [
// ...
\App\Http\Middleware\Version::class, // 在 http header 中返回当前接口的 Git 版本
];
app/Http/Middleware/Version.php
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
class Version
{
/**
* 在 header 中添加项目 Git 库的 commit id
*
* @para...
介绍
laravel-nestedset(Nested Set Model)
安装
composer require kalnoy/nestedset
用法
// database/migrations/2020_08_10_155445_create_category_table.php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateCategoryTable extends Migration
{
public function up()
{
Schema::create('categor...
安装 Laravel
composer create-project laravel/laravel ./
修改依赖的下载源
composer global require slince/composer-registry-manager
composer repo:ls
composer repo:use aliyun
添加项目依赖
composer require doctrine/dbal # 增加修改表结构功能
composer require zedisdog/laravel-schema-extend # 增加表注释功能
composer require laravel/passport # OAuth
composer require spatie/laravel-permission # Permis...
问题
$this->validate
是因为所有控制器都使用了 ValidatesRequests Trait,所以可以使用这个 Trait
中提供的 validate() 方法
那 \App\Http\Requests 里的 validate () 方法是从哪里来的?最终实现是相同的吗?为什么会有两种写法?(我知道Validator::make() 是为了在 控制器外边用)
Laravel 代码如下:
$request->validate()
protected function validateLogin(\App\Http\Requests $request)
{
$request->...
:::::::::::::::::::::::::::::::::::::::::::::::::::
::
:: MySQL Baker 4 Windows
::
:: DATABASES=以空格分隔的库名或 --all-databases
::
:::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1-3 delims=-/ " %%1 in ("%date%") do set DATE_STR=%%1%%2%%3
set FILE_DATE=%DATE_STR: =0%
set FILE_PWD=123456
REM...
1. 下载zip版解压到你需要的位置,比如 C:\Program Files\MySQL 8.0.20\
2. 打开命令提示符进入 bin 文件夹
cd /d C:\Program Files\mysql-8.0.20\bin
3. 安装为自启动服务
mysqld.exe --install MySQL8.0.20
#卸载服务: mysql-nt.exe -remove
4. 初始化,生成 /data 目录等
mysqld.exe --initialize
# root 密码在 ./data/%COMPUTERNAME%.err 里
# 我的主机名为 win10,所以密码在 /data/win10.err 里
# 搜关键...
上接:Dell EMC PowerEdge T340 磁盘初始化
CentOS 7 (1708) 安装盘内置有 PHP5.4.16、Apache2.4.6 和 MariaDB15.1(MySQL5.5.56),如果能满足需要,可在装系统的同时一起安装(如下图),下文就不需要看了。
客户的服务器,禁止联网、禁止使用U盘,只能使用光驱。需要的 WEB 环境如下:
CentOS-7-x86_64-DVD-1708.iso
Nginx-1.18.0-1.el7.ngx.x86_64
MySQL-community-server-8.0.20-1.el7.x86_64
PHP-7.2w
下载 rpm 包
...
我的 /etc/hosts
192.168.10.10 api.local
症状:每个地址都要 pending 5 秒左右,而直接使用 Chrome 打开又很快。
网上给的方法是使用 nfs 类型的 folders,经测试无效,使用 curl 查到问题出在域名解析上,最终在这里找到了原因:
.local 结尾的主机名都将被视为Bonjour主机,而不是通过查询“网络”偏好设置中的DNS服务器条目。
解决办法:
不使用 .local 或者为 .local 追加一个 ipv6 的地址。ipv6 条目写在原 ipv4 记...