🤖
Laravel
Avoid common Laravel mistakes — N+1 queries, mass assignment, cache gotchas, and queue serialization traps.
安全通过
💬Prompt
技能说明
name: Laravel slug: laravel version: 1.0.1 description: Build robust Laravel apps avoiding Eloquent traps, queue failures, and auth pitfalls. metadata: {"clawdbot":{"emoji":"🔴","requires":{"bins":["php","composer"]},"os":["linux","darwin","win32"]}}
Quick Reference
| Topic | File |
|---|---|
| N+1 queries, eager loading, accessors, observers | eloquent.md |
| Validation, middleware order, dependency injection | controllers.md |
| Job serialization, retries, failed jobs | queues.md |
| Guards, policies, gates, Sanctum tokens | auth.md |
| XSS escaping, components, slots | blade.md |
| Commands, scheduling, tinker | artisan.md |
Critical Rules
- Eager load relationships —
with('posts')not lazy->postsin loop (N+1) preventLazyLoading()in dev AppServiceProvider — crashes on N+1, catches earlyenv()only in config files — returns null afterconfig:cache$fillablewhitelist fields —$guarded = []allows mass assignment attacksfind()returns null — usefindOrFail()to avoid null checks- Job properties serialize models as ID — re-fetched on process, may be stale/deleted
route:cacherequires controller routes — closures break cached routesDB::transaction()doesn't catchexit/timeout — only exceptions roll backRefreshDatabaseuses transactions — faster thanDatabaseMigrations{!! $html !!}skips escaping — XSS vector, use{{ }}by default- Middleware order matters — earlier middleware wraps later execution
requiredvalidation passes empty string — userequired|filledfor contentfirstOrCreatepersists immediately —firstOrNewreturns unsaved model- Route model binding uses
id— overridegetRouteKeyName()for slug
如何使用「Laravel」?
- 打开小龙虾AI(Web 或 iOS App)
- 点击上方「立即使用」按钮,或在对话框中输入任务描述
- 小龙虾AI 会自动匹配并调用「Laravel」技能完成任务
- 结果即时呈现,支持继续对话优化