Size: a a a

Laravel для начинающих

2021 February 07

v

vladimir in Laravel для начинающих
Andrey Helldar
hasOne:
Relation: https://github.com/laravel/framework/blob/8.x/src/Illuminate/Database/Eloquent/Concerns/HasRelationships.php#L70-L87
Object: https://github.com/laravel/framework/blob/2ecc0b484aaf5aa356f799f629dde7242e56084f/src/Illuminate/Database/Eloquent/Relations/HasOne.php

belongsTo:
Relation: https://github.com/laravel/framework/blob/8.x/src/Illuminate/Database/Eloquent/Concerns/HasRelationships.php#L184-L219
Object: https://github.com/laravel/framework/blob/2ecc0b484aaf5aa356f799f629dde7242e56084f/src/Illuminate/Database/Eloquent/Relations/BelongsTo.php

На практике часто сталкиваюсь с тем, что релейшен belongsTo, даже с явно указанными именами колонок, не получает запись из базы при том, что hasOne срабатывает.

Из последнего: есть две модели: Package и Activity. Вторая содержит колонку package_id.
Из модели Activity нужно получить инстанс Package. Скажешь "укажи $this->belongsTo(Package::class)"? А вот нет - всегда вернётся null. Чтобы сработала связь, нужно указать $this->hasOne(Package::class, 'id', 'package_id');
Даже не знаю, всегда указываю belongsTo и ни разу еще не подводило 🙁

App\Models\Profile:
```public function user()
{
   return $this->belongsTo(User::class);
}
```


Через tinker:
>>> App\Models\Profile::first()->user
=> App\Models\User {#4488
    id: 1,
    phone: '+79999999999'
}
>>>  App\Models\Profile::with('user')->first()->user
=> App\Models\User {#4554
    id: 1,
    phone: '+79999999999'
}
>>>
источник

PP

PHP PROGRAMMIST⬤👍3🅰️... in Laravel для начинающих
где?
источник

PP

PHP PROGRAMMIST⬤👍3🅰️... in Laravel для начинающих
хтмло академия?
источник

D

DK in Laravel для начинающих
PHP PROGRAMMIST⬤👍3🅰️
хтмло академия?
попробуй прочитать 50 сообщений наверх
источник

RK

Roman Kolosov in Laravel для начинающих
источник

D

DK in Laravel для начинающих
а стой
источник

D

DK in Laravel для начинающих
ты на курс записался?
источник

ᅠᅠ𝓝𝓾𝓻𝓵𝓪𝓷𝓬𝓱𝓲𝓴 ོ... in Laravel для начинающих
ля, что за сайт
источник

D

DK in Laravel для начинающих
перейди в него
источник

RK

Roman Kolosov in Laravel для начинающих
DK
ты на курс записался?
да но после
источник

D

DK in Laravel для начинающих
кхммм
источник

D

DK in Laravel для начинающих
странно
источник

D

DK in Laravel для начинающих
подожди сутки, да черкани  в поддержку :D
источник

ᅠᅠ𝓝𝓾𝓻𝓵𝓪𝓷𝓬𝓱𝓲𝓴 ོ... in Laravel для начинающих
он бесплатный?
источник

D

DK in Laravel для начинающих
выше прочти
источник

RK

Roman Kolosov in Laravel для начинающих
источник

RK

Roman Kolosov in Laravel для начинающих
ты это смотрел?
источник

D

DK in Laravel для начинающих
+ и ключ дадут
источник

D

DK in Laravel для начинающих
Roman Kolosov
ты это смотрел?
но после получения ключа
источник

ᅠᅠ𝓝𝓾𝓻𝓵𝓪𝓷𝓬𝓱𝓲𝓴 ོ... in Laravel для начинающих
DK
+ и ключ дадут
дайте ответы  :D
источник