在开发环节要测试的时候,如果想要在数据库中批量插入一些假数据,这个时候就可以使用 model factories。
在 database/factories/ 目录下面默认定义了一个 UserFactory.php
namespace Database\Factories;
use Illuminate\Database\Eloquent\Factories\Factory;
use Illuminate\Support\Str;
class UserFactory extends Factory
{
/**
* Defin
Read more ...
Laravel 使用的 Eloquent ORM 中的 Model 可以用一种非常易读的方式去定义 Model 和 Model 之间的关系。
1 对 1 关系
比如 User 和 Phone 都是一个 Model,要去表示用户和 Phone 的关系,可以:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
/**
* Get the phone associated with
Read more ...
上传文件是一个网页应用必不可少的一部分,这里就记录一下 Laravel 中如何上传,并展示图片。
拆分开来主要分为如下几个步骤:
创建数据库 Model,用一个 Model 实体来保存上传图片的路径以及相关的 meta 信息
添加 Controller 层用来处理保存图片逻辑,以及持久化的过程
创建前端 Form 表单,并提交 POST 请求,提交图片
创建数据库 Model
首先使用 artisan 创建一个 Model 和 migration:
php artisan make:model Photo -m
这行命令会创建
Read more ...
CLIProxyAPI 把 Claude Code、Gemini CLI、Codex 订阅包装成统一 API 的开源神器
最近在折腾自己的 AI 工具链时,我遇到了一个非常现实的痛点。手里同时握着 [[Claude]] Pro、ChatGPT Plus、Gemini Advanced 这几个订阅,每次想在自己的脚本或小工具里调用它们的能力,都只能望洋兴叹——订阅账号给的是网页端或 CLI 工具的使用权,而不是 API Key。如果想走 API 路径,就得额外付一次费,而且 API 的定价往往比订阅贵得多。于是我一直在找一个能把订阅账号的额度转化为 API 调用能力的方案,直到最近发现了 [[CLIProxyAPI]] 这个项目。今天就聊聊这个工具到底解决了什么问题。
LM Studio:在本地运行大语言模型的最佳桌面工具
自从各类大语言模型开始开源以来,我就一直在尝试在本地运行它们。早期折腾 [[llama.cpp]] 的时候,需要手动编译、手动下载模型权重、在命令行里敲参数,对于非技术背景的用户来说门槛相当高。直到我发现了 [[LM Studio]],才算是真正体验到了”把 AI 装进自己电脑”的顺畅感。用它运行本地模型,就像在 App Store 下载一个 App 一样自然。