Laravel-如何执行商店资源?

问题描述

我正在创建一个CRUD应用程序。但是,当我在方法存储区中编写代码时,我遇到了一个问题:我正在尝试创建变量$contact = new Contact()。消息:Undefined type 'App\Contact'

此ContactController.PHP

    use App\Contact;
    ....
    public function store(Request $request)
    {
        $request->validate([
            'first_name'=>'required','last_name'=>'required','email'=>'required'
        ]);
        $contact = new Contact([
            'first_name' => $request->get('first_name'),'last_name' => $request->get('last_name'),'email' => $request->get('email'),'job_title' => $request->get('job_title'),'city' => $request->get('city'),'country' => $request->get('country')
        ]);
        $contact->save();
        return redirect('/contacts')->with('success','Contact saved!');

    }

我是通过以下链接实现的:https://medium.com/techiediaries-com/laravel-7-crud-tutorial-build-a-crud-app-with-mysql-and-bootstrap-4-4ed8e94f2db0

解决方法

以下是您创建的选项:
选项1:

$contact = Contact::create([
    'first_name' => $request->get('first_name')
]);

选项2:

$contact = new Contact();
$contact->first_name = 'test';
$contact->save();

还要在您的联系人类中,检查您的名称空间。并且,将控制器中的名称空间用作:

使用App \ Models \ Contact; //因为您说的contact.php位于models文件夹内

,

您可以使用它使控制器简单干净

use App\Contact; // if use laravel 7
use App\Models\Contact // if use laravel 8
....
public function store(Request $request,Contact $contact)
{
    $request->validate([
        'first_name'=>'required','last_name'=>'required','email'=>'required'
    ]);

     $contact->create($request->all());
    
    return redirect('/contacts')->with('success','Contact saved!');

}

功能更新中

use App\Contact;
    ....
    public function update(Request $request,Contact $contact)
    {
        $id = $contact->id; // if use Route resource 
        $id = $request->id; // if use Route Post


        $request->validate([
            'first_name'=> 'required','email'=>'required'
        ]);

         $date = $request->except(['_token','_method']);

         $contact->where('id',$id)->update($date);
        
        return redirect('/contacts')->with('success','Contact updated!');

    }

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...