【问题标题】:How do i make a Laravel web.php route work on a new project?我如何使 Laravel web.php 路由在新项目上工作?
【发布时间】:2023-01-25 02:08:28
【问题描述】:

对不起我的英语不好。 我正在尝试创建一个 laravel 路由,但我无法让它工作。 我的项目名称是“portalRAG”。这是一个网络应用程序。当我访问“我的地址/PortalRAG“ 它工作得很好,但我不能让任何其他路线工作。

这是一个新的 Laravel 项目。它几乎是空的,除了创建一些 1 或 2 个视图、控制器和模型之外,我没有触及任何主要配置,并且只创建了一些 html 代码。 这是我的 web.php 文件:

  <?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers;
use App\Http\Controllers\ragController\ragHomeController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('login');
});

/* NOT WORKING
Route::get('test', function () {
    return view('login');
});
 */

 Route::get('test','App\Http\Controllers\ragController\ragHomeController')->name('test');

我只是想访问“测试”路线。我尝试使用的控制器叫做ragHome控制器它在一个抹布控制器(基本控制器文件中的一个文件夹)。

这是 ragHomeController。

<?php

namespace App\Http\Controllers\ragController;

use App\Http\Controllers\Controller;
use App\Models\ragModel\ragHomeModel;
use Illuminate\Http\Request;

class ragHomeController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
       echo("WHATEVER");
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        //
    }

    /**
     * Display the specified resource.
     *
     * @param  \App\Models\ragModel\ragHomeModel  $ragHomeModel
     * @return \Illuminate\Http\Response
     */
    public function show(ragHomeModel $ragHomeModel)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Models\ragModel\ragHomeModel  $ragHomeModel
     * @return \Illuminate\Http\Response
     */
    public function edit(ragHomeModel $ragHomeModel)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Models\ragModel\ragHomeModel  $ragHomeModel
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, ragHomeModel $ragHomeModel)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Models\ragModel\ragHomeModel  $ragHomeModel
     * @return \Illuminate\Http\Response
     */
    public function destroy(ragHomeModel $ragHomeModel)
    {
        //
    }
    public function __invoke()
    {
    }
}

我弄错了什么?我试过清除缓存,清除路由缓存,但没有任何效果。 我应该如何访问我的“测试”路线? (我已经尝试了各种方法,但仍然无法正常工作)。 “my.address/PortalRAG/测试“? “我的地址/测试“?

【问题讨论】:

  • 当您尝试访问测试路由时会发生什么?
  • @aynber “404 NOT FOUND”无论如何。
  • 试试ragHomeController::class,而不是'App\Http\Controllers\ragController\ragHomeController'。当您运行 php artisan r:l 时,路线是否出现?
  • 我认为你的问题不是你如何声明路由,而是你的网络服务器配置错误。如果你的路由没有成功注册,那么你会得到一个异常,但是你得到一个404
  • 理想情况下,您的项目将拥有自己的虚拟主机,并且 url 将是 PortalRAG.local(或其他)。如果你在你的PortalRAG文件夹中并运行php artisan serve,你可以通过localhost:8000(我认为)访问该项目,你的路线通过localhost:8000/test

标签: php laravel


【解决方案1】:

请像下面这样写你的路线

 Route::get('test',[ragHomeController::class,'Your_Method_Name'])->name('test');

并将您的控制器导入您的网络顶部

use AppHttpControllers
agHomeController;

注意:有时它不起作用,所以你必须运行

php artisan optimize

如果您使用 xampp 来运行您的 laravel 项目,那么您可以像下面这样访问您的路线

"my.address/PortalRAG/public/test"

【讨论】:

  • 感谢你的回答。我已经完成了所有步骤,但它仍然“未找到”。想想我会发疯哈哈。我应该使用“my.address/test”访问它吗?
  • 您在使用 xampp 还是在运行 PHP artisan serve?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-24
  • 2018-12-22
  • 2021-12-03
  • 1970-01-01
  • 2022-06-15
相关资源
最近更新 更多