"无法声明类应用程序 http controllers 类别,因为名称已经在使用中"。如何修复它,请有人解释我
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
use Appcategory;
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');
}
}
您的控制器类category
与您的模型类category
相冲突。将您的控制器更改为 categoryController ,它应该解决问题,也应始终从大写开始。
您可以在不同的名称空间中声明具有相同名称的类,但是您不能将同类的类称为同名的类,这会导致名称冲突。因此,由于以下内容,您的错误正在弹出: -
use Appcategory;
class category extends Controller
您需要更改其中任何一个的名称。
问题是您在此文件中使用了2个名为category
的类。Appcategory
和AppHttpControllerscategory
。
您有2个解决此问题的选项:
- 通过更改类名来解决名称冲突。例如将
AppHttpControllerscategory
更改为AppHttpControllerscategoryController
- 将导入的
Appcategory
重命名为此文件中未退出的其他内容:
use Appcategory as categoryModel;
// ...
public function save(Request $request){
$categoryentry=new categoryModel();
// ...
}
我希望这对您有帮助。
我认为您应该使用此代码。
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
use Appcategory 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');
}
}
希望这对您有帮助。