PhpStorm 和 Symfony 3 - 对于某些捆绑包,找不到命名空间
我在 Symfony 3 中的一些包的命名空间在 PhpStorm 中无法识别。 它影响: 我自己的包和 外部捆绑包(在供应商文件夹中),例如 FOM-Rest-Bundle (另见...
文件资源管理器/项目窗口中的 PhpStorm 浅黄色突出显示,这是什么以及如何更改颜色?
我刚刚开始使用 PhpStorm,我注意到当我查看我的供应商目录(由 Composer 管理)时,我发现背景颜色是浅黄色,并且与我当前的主题不可读。就像
我正在开发一个相当老的项目,我想做一些小的重构。 我有一个 if 语句,条件如下 if ($a == 1 || $a == 2 || b == 3) 我想更换它(或者更好的写...
我正在尝试将 Xdebug 添加到我的 Magento 项目中以便更好地调试。我实际上正在开发 WSL2,我在其中安装了 Laradock。 如果我尝试显示 xdebug_info() 我可以看到我已经正确安装了...
为 IntelliJ IDEA 添加 JSON 语法突出显示以用于 .liquid 文件
我已经能够按照此处的说明向我的 .liquid 文件添加语法突出显示:在 webStorm/phpStorm 中启用 Liquid 模板语法突出显示 它对我的 HTML 运行良好并且...
我不完全确定要谷歌搜索什么...(尝试了一些东西但没有运气)。 弹出窗口中没有选项可以禁用该特定建议 - 有人知道如何做到这一点吗? 当我点击“更多
PHPUnit 和 Laravel 响应 401 状态代码,它应该返回 422
我正在学习 Laravel 11,我在使用 PHPStorm 时遇到了第一个问题(我不知道这是否是我的测试)。 我有这个控制器: 我正在学习 Laravel 11,我在使用 PHPStorm 时遇到了第一个问题(我不知道这是否是我的测试)。 我有这个控制器: <?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; use Illuminate\Http\Request; class LoginController extends Controller { public function login(Request $request) { $request->validate([ 'email' => 'email|string', 'password' => 'required|min:8', ]); $credentials = request(['email', 'password']); if (!$token = auth()->attempt($credentials)) { return jsonResponse(status: 401, message: 'Unauthorized'); } return jsonResponse(data: [ 'token' => $token, 'expires_in' => auth()->factory()->getTTL() * 60 ]); } } 我的测试代码: public function test_email_must_be_required(): void { $credentials = ['password' => 'password']; $response = $this->postJson("{$this->apiBase}/login", $credentials); $response->assertStatus(422); $response->assertJsonStructure(['message', 'data', 'status', 'errors' => ['email']]); $response->assertJsonFragment(['errors' => ['email' => ['The email field is required.']]]); } 但是当我运行测试时,我得到以下响应: 但是,它不应返回 401,因为测试凭据中的电子邮件未发送。它应该返回响应代码 422。 [编辑] 当我更改验证方法时: ... 'email' => 'required|email|string', ... 我的代码响应是 200: [编辑2] 这是我的routes/api.php代码: 'email' => 'email|string', 此规则检查电子邮件是否是有效的电子邮件格式并且是字符串。但是,该字段未标记为必填字段。因此,如果请求中未提供电子邮件,验证不会失败,并且请求将继续进行下一步(auth()->attempt()),最终由于缺少凭据而返回 401 未经授权的响应。