Свойство поля отношения не существует - PullRequest
0 голосов
/ 28 апреля 2020

Я пытаюсь добавить отношение к одному из моих контроллеров CRUD, но оно ведет себя странно. У меня есть две модели, Клиент и Адрес. Адрес принадлежит Заказчику, а Заказчик имеет Большой Адрес. Когда я добавляю определение поля, я получаю сообщение об ошибке

Свойство [адрес] не существует в этом экземпляре коллекции.

Отношения работают, я проверил в Тинкер.


Определение поля CRUD CustomerCrudController

$this->crud->addField(
        [
            'label' => 'Select Address',
            'name' => 'address',
            'entity' => 'address',
            'attribute' => 'Address',
            'model' => '\App\Models\Address\Address',
            'type' => 'relationship'
        ]
    );

Модель клиента

public function address()
{
    return $this->hasMany( \App\Models\Address\Address::class );
}

Модель адреса

public function customer()
{
    return $this->belongsTo( \App\Models\Customer\Customer::class );
}

Схема таблицы адресов

Schema::create('Addresses', function(Blueprint $table) {
        $table->increments('id');
        $table->timestamps();
        $table->string('Address_Type');
        $table->string('Address'); //->unique();
        $table->string('State');
        $table->string('City');
        $table->string('Zipcode');
        $table->datetime('Last_GeoCoded')->nullable();
        $table->float('Latitude')->nullable();
        $table->float('Longitude')->nullable();
        $table->integer('customer_id')->unsigned();
        $table->boolean('GeoCoded')->nullable()->default(false);
        $table->boolean('Primary')->default(false);
    });
...