Как стремиться к загрузке с Laravel на другом соглашении об именах - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть две таблицы.«недели» и «даты» Таблица недель содержит «startDate» и «endDate». Оба столбца представляют собой ForeignKeys для столбцов дат.Таблица дат содержит идентификатор первичного ключа и дату.

weeks

| IDweeks | startDate | endDate |
|    1    |     2     |    6    |
dates

| IDdates | date |
|    1    | 12-03-2018 |
|    2    | 13-03-2018 |
.....

Когда я запрашиваю недели, я всегда получаю ключи для startDate и endDate.Я хотел бы получить значения из таблиц дат вместо этого.

Я уже пытался загрузить значения следующим образом:


недель Модальный

class weeks extends Model
{
//....
    public function startDate()
    {
        return $this->belongsTo('App\date', 'startDate', 'date');
    }
    public function endDate()
    {
        return $this->belongsTo('App\date', 'endDate', 'date');
    }
//....


даты Модальные

class date extends Model
{

    protected $primaryKey = 'IDdates';


вызов метода 'with ()'

    public function showWeeks() {
        $weeks = weeks::with('startDate')->get();
        return view('weeks')->with('weeks', $weeks);
    }


используя в представлении


 @foreach ($weeks as $week )
    {{ $week->startDate->date }} // produces an error like: Trying to get property 'date' of non-object
    {{ $week->startDate }} // works but returns only the keys instead of the value of dates table.


@endforeach


Как загрузить результаты таблицы дат при вызове недель?

РЕДАКТИРОВАТЬ: отредактировал опечатку вназвание

...