如何调试此“找不到类'App / Address'”?

时间:2019-03-29 20:31:38

标签: laravel

我无法通过迁移将数据插入表中 我试图将应用程序/地址放到任何地方,但这并没有帮助我。 有人能帮我吗? 我想知道这里出了什么问题。

<?php

namespace App\Http\Controllers;

use App\Address;
use App\User;
use Illuminate\Http\Request;

class AddressController extends Controller
{
    public function index()
    {
        //
    }

    public function create()
    {
        $user = User::findOrFail(1);
        $address = new Address(['name' => 'ginta latina 11']);
        $user->address()->save($address);
    }
}
  

Symfony \组件\调试\异常\ FatalThrowableError(E_ERROR)       找不到“应用/地址”类

这是模型:

<?php namespace App;

use Illuminate\Database\Eloquent\Model;

class Address extends Model
{
    protected $fillable = ['name'];
}

这是我正在使用该类的地方:

public function address()
{
    return $this->hasOne('App/Address');
}

2 个答案:

答案 0 :(得分:1)

您的hasOne('App/Address')应该是hasOne('App\Address'),请注意\而不是/

这意味着您的函数将如下所示:

public function address()
{
    return $this->hasOne('App\Address');
}

或者,我建议改用::class

public function address()
{
    return $this->hasOne(Address::class);
}

如果Address类与您正在使用的类不在同一个namespace中,则还需要添加use App\Address;

答案 1 :(得分:0)

在Laravel 8.x中,

使用App \ Address;

被替换为

使用App \ Models \ Address;