当前位置: 首页 > 知识库问答 >
问题:

msgstr"无法声明类App\Http\Controller\类别,因为名称已在使用中"

宗政子辰
2023-03-14

“无法声明类App\Http\Controllers\category,因为该名称已在使用中”。怎么修请有人给我解释一下

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\category;
class category extends Controller
{

    public function index(){
        return view('admin.category.category_entry');
    }

    public function save(Request $request){
        $categoryentry=new category();
        $categoryentry->name=$request->name;
        $categoryentry->description=$request-> description;
        $categoryentry->publication_status=$request->publication_status;
        $categoryentry->save();
        return redirect('/category/save')->with('msg','Data inserted');
    }
}

共有3个答案

徐旻
2023-03-14

我认为你应该使用这个代码。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\category AS category_model;
class category extends Controller
{

    public function index(){
        return view('admin.category.category_entry');
    }

    public function save(Request $request){
        $categoryentry= new category_model;
        $categoryentry->name=$request->name;
        $categoryentry->description=$request->description;
        $categoryentry->publication_status=$request->publication_status;
        $categoryentry->save();
        return redirect('/category/save')->with('msg','Data inserted');
    }
}

希望这对你有帮助。

赫连卓
2023-03-14

问题是您在此文件中使用了名为category的2个类App\categoryApp\Http\Controllers\category

您有两个选项可以修复此问题:

  1. 通过更改类名解决名称冲突。例如,将App\Http\Controllers\category更改为App\Http\Controllers\categoryController
  2. 将导入的App\category重命名为此文件中不存在的其他文件,如下所示:
use App\category as categoryModel;

// ...


public function save(Request $request){

    $categoryentry=new categoryModel();

    // ...
}

我希望这对你有帮助。

陈鸿才
2023-03-14

您的控制器类类别与您的模型类类别发生名称冲突。将您的控制器更改为CategoryController,它将解决此问题,并且类名应始终以大写开头。

您可以在不同的名称空间中声明具有相同名称的类,但不能将该类调用到具有相同名称的另一个类中,这将导致名称冲突。因此,出现您的错误是因为以下原因:-

use App\category; 
class category extends Controller

您需要更改其中一个的名称。

 类似资料:
  • 我最近将一个Laravel4.2项目迁移到了5.0。到目前为止,我已经完成了所有必要的步骤,但我不断得到一个错误。 无法声明类Controller,因为名称已在使用中 我的控制器已按照laravel在升级指南中提供的内容进行了更改。 此外,我已将其添加到我的composer.json.的类映射指令 到目前为止,我找不到任何解决方案,如果你们知道该怎么做,这将对我有很大帮助:)提前谢谢!

  • 当我运行程序时。我的模型用户中有错误。路径为App\Models\User。php 错误是 无法在我的浏览器中声明类App\User,因为该名称已在使用中。我尝试了,但没有任何变化,仍然存在错误。

  • 我正在尝试在我的网站上进行多重身份验证;我希望一个视图作为用户登录,另一个视图作为客户端登录。我有一个users表,我创建了一个client表,用代码代替mail,用mtpass代替密码。 ClientLoginController 登录控制器 我想不出如何修复以下错误。 无法声明类App\Http\Controller\ClientLoginController,因为名称已在使用中 有人能帮我修

  • 问题内容: 我正在编写一个小程序,以有序的方式定时显示我的Rubik立方体解。但是Python(3)一直困扰着我关于全局声明之前使用时间的困扰。但是奇怪的是,它在开始时就声明为(是,是列表),然后在函数(他抱怨的地方)中再次声明为,并使用对其进行“全局”处理。这是我的代码,因此您可以根据需要进行分析: 任何帮助将不胜感激,因为我是Python世界的新手:) 问题答案: 全局声明是当你声明是 如果声

  • 我试图在react类中实现datepicker,在这个过程中,我在react类中声明了const,我正在处理这个类,并且得到了解析错误。有人能帮个忙吗申报有什么问题吗? 我得到下面的错误。 未能编译/src/组件/类别。js行11:9:解析错误:意外标记 9 |类别类别。组件{10| 11|const date=useState(new Date()); | ^ 12| 13|构造函数(props

  • 我升级我的项目从Laravel 4.2到5.0,但我得到这个错误,当我完成的过程: 在中找不到类“App\Http\Controllers\Controller”/app/Http/Controllers/Auth/AuthController。菲律宾:8 但是提到的控制器在app/Http/Controllers/controller中。php。 它也在composer中定义。json、自动加载