标签: laravel-9

Laravel 9 要求 laravel/ui 使用 Auth::routes

我正在将我的项目升级到 Laravel 9。但是,当我尝试运行时php artisan,我收到一条错误消息。

在 Auth.php 第 60 行:要使用 Auth::routes() 方法,请安装 laravel/ui 包。

所以我安装了该软件包,但仍然收到相同的错误消息。可能是什么问题,我该如何解决?

php laravel-9

7
推荐指数
1
解决办法
3万
查看次数

找不到模块:错误:无法解析“laravel-vite-plugin/inertia-helpers”

我已经运行 npm install,但是当我运行时

npm run dev
Run Code Online (Sandbox Code Playgroud)

我收到错误:

./resources/js/app.jsx 23:65-76 中的警告 严重依赖:不支持直接访问 import.meta (仅支持属性访问)

./resources/js/app.jsx 15:0-75 中的错误未找到模块:错误:无法解析“/Users/blow/Sites/localhost/firstApps/”中的“laravel-vite-plugin/inertia-helpers”资源/js'

怎么解决呢?我在一个包中使用了 laravel 9 + React js

reactjs laravel-9

7
推荐指数
1
解决办法
1万
查看次数

Laravel 9 SymfonyMailer 错误 - 电子邮件必须具有“收件人”、“抄送”或“密件抄送”标头

在使用 Metronic 8 主题将 Laravel 8 项目更新到 Laravel 9 后,我在发送电子邮件时遇到了问题。我没有更改任何与电子邮件相关的代码,但现在我使用 Sendmail 驱动程序遇到了此错误:

电子邮件必须具有“收件人”、“抄送”或“密件抄送”标头。{"userId":6,"exception":"[object] (Symfony\Component\Mime\Exception\LogicException(code: 0): 电子邮件必须具有“To”、“Cc”或“Bcc”标头。在/home/myhome/public_html/myproject.com/vendor/symfony/mime/Message.php:128)

控制器

class MyController extends Controller
{
    public function activate($id)
    {
        $mymodel = MyModel::find($id);

        $contact = Contact::where('mymodel_id', $mymodel->id)->first();
        Mail::to($contact->email)->send(new MyMail($contact));
    }
}
Run Code Online (Sandbox Code Playgroud)

可邮寄

class MailActive extends Mailable
{
    use Queueable, SerializesModels;

    protected $contact;

    public function __construct(Contact $contact)
    {
        $this->contact = $contact;
    }

    public function build()
    {
        return $this->from('theemail@gmail.com', 'Me')
            ->view('emails.myemailview')
            ->with([
                'contact' => $this->contact
            ]);

        // $this->withSymfonyMessage(function (Email $message) {
        //     $message->getHeaders()->addTextHeader(
        //         'addAddress', 'theemail@gmail.com' …
Run Code Online (Sandbox Code Playgroud)

php sendmail laravel symfony-mailer laravel-9

6
推荐指数
1
解决办法
1万
查看次数

Laravel Nova 4 自定义布局

由于 Nova 4 不再有您可以发布的刀片,您如何在搜索栏旁边的头部导航栏中实现最佳定制?我想在那里添加一个下拉菜单,但我不知道从哪里开始或要更改什么?

在 Nova 3 及更早版本中,您必须发布 nova 的资源,然后您可以在layout.blade.php 中添加内容。

例子 示例截图

laravel laravelcollective laravel-nova laravel-9

6
推荐指数
1
解决办法
3103
查看次数

Laravel 9 作曲家语法错误,意外标记“)”

在我的 Laravel 9 项目中运行后,composer update我遇到了以下错误消息:

Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 1 removal
  - Downloading fruitcake/laravel-cors (v3.0.0)
  - Removing asm89/stack-cors (v2.1.1)
  - Upgrading fruitcake/laravel-cors (v2.2.0 => v3.0.0): Extracting archive
77 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

In Finder.php line 588:

  syntax error, unexpected token ")"


Script @php artisan package:discover --ansi …
Run Code Online (Sandbox Code Playgroud)

php laravel composer-php laravel-9

6
推荐指数
2
解决办法
3万
查看次数

如何在 Laravel Vite 中使用 DataTables?

我在将 DataTables 添加到新的 Laravel 9.21 实例时遇到问题。但我在控制台中收到错误。我缺少什么?

未捕获的类型错误:$(...).DataTable 不是函数

bootstrap.js

import jquery from 'jquery';
window.jQuery = jquery;
window.$ = jquery;

import DataTable from 'datatables.net';
window.DataTable = DataTable;

$(document).ready(function() {
    $('#example').DataTable();
});
Run Code Online (Sandbox Code Playgroud)

jquery datatables vite laravel-9 laravel-vite

6
推荐指数
1
解决办法
4658
查看次数

使用 Storage::fake 进行测试时无法检索文件的 file_size

我刚刚将我的应用程序从 Laravel v8 升级到 v9。现在我遇到以下代码抛出此错误的问题:

League\Flysystem\UnableToRetrieveMetadata :无法检索位置为 test_file.xlsx 的文件的 file_size。

我的控制器:

<?php

namespace App\Http\Controllers\Reports;

use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Storage;

class ReportDownloadController extends Controller
{
    /**
     * Handle the incoming request.
     *
     * @param string $path
     * @return \Symfony\Component\HttpFoundation\StreamedResponse
     */
    public function __invoke(string $path): \Symfony\Component\HttpFoundation\StreamedResponse
    {
        return Storage::disk('temp')->download($path, request()->query('filename'));
    }
}
Run Code Online (Sandbox Code Playgroud)

相关测试:

/** @test */
    public function it_returns_a_file_download_with_the_provided_filename_presented_to_the_user()
    {
        $this->withoutExceptionHandling();

        Storage::fake('temp');
        $fakeFile = UploadedFile::fake()->create('test_file.xlsx');
        Storage::disk('temp')->put('test_file.xlsx', $fakeFile);

        $response = $this->actingAs($this->user)
            ->getJson(route('reports.download', ['path' => 'test_file.xlsx', 'filename' => 'Appropriate.xlsx']));

        $response->assertDownload('Appropriate.xlsx');
    }
Run Code Online (Sandbox Code Playgroud)

我知道 Flysystem 已更新到 v3,但我似乎不知道如何解决此问题。 …

testing laravel laravel-9

6
推荐指数
1
解决办法
1万
查看次数

在生产模式下运行 vite 时出现“jQuery 不是函数”

我正在尝试将 jQuery 与 laravel 9 + vite 一起使用。它在开发中工作正常,但在构建时,我发现 jQuery 不是一个函数

库.ts

import * as jQuery from 'jquery';
declare global {
    interface Window {
        jQuery: typeof jQuery;
        $: typeof jQuery;
    }
}

window.$ = window.jQuery = jQuery;
Run Code Online (Sandbox Code Playgroud)

主要.ts

jQuery(function(){
     console.log(jQuery(".datepicker"));
});
Run Code Online (Sandbox Code Playgroud)

vite.config.ts

jQuery(function(){
     console.log(jQuery(".datepicker"));
});
Run Code Online (Sandbox Code Playgroud)

npm run dev 的输出

npm run dev 的输出

npm run build 的输出

npm run build 的输出

jquery rollupjs vite laravel-9

6
推荐指数
1
解决办法
2093
查看次数

Laravel 9 与 Vite,将 .css 和 .js 文件混合为一个?

如何处理将多个 .css 和 .js 文件混合到一个文件中(laravel mix迄今为止一直这样做)。

新的Laravel 9安装了Vite.js,并删除了laravel mix由于我们最常使用laravel mix的主要功能是将 /resource 文件夹中的文件混合到 /public 文件夹中(许多文件合并为一个)。你是如何处理这个问题的,或者你还在使用 laravel mix 和 Vite 吗?

php laravel vite laravel-9 laravel-vite

6
推荐指数
1
解决办法
1920
查看次数

方法 Laravel\Passport\Guards\TokenGuard::attempt 不存在

在 Laravel 9 中,我尝试使用自定义防护来访问登录 API client,但出现以下错误。请帮忙。

BadMethodCallException: Method Laravel\Passport\Guards\TokenGuard::attempt does not exist.
Run Code Online (Sandbox Code Playgroud)

配置/Auth.php

    'guards' => [
        ...
        'client' => [
            'driver' => 'passport',
            'provider' => 'client',
        ],
    ],

    'providers' => [
        ...
        'client' => [
            'driver' => 'eloquent',
            'model' => App\Models\Client::class,
        ],
    ],
Run Code Online (Sandbox Code Playgroud)

错误行: if(!$authGuard->attempt($login)){

api/AuthController.php

public function login(Request $request){
        $login = $request->validate([
            'email' => 'required|string',
            'password' => 'required|string',
        ]);
        try {
            $authGuard = Auth::guard('client');
            if(!$authGuard->attempt($login)){
                $data = 'Invalid Login Credentials';
                $code = 401;
            } else {
                $user = …
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-passport laravel-9

6
推荐指数
1
解决办法
6484
查看次数