Спасибо, Тим, за ваш ответ и, конечно, я покажу вам, что я сделал.
Итак, у меня была обычная модель пользователя и модель участника.Что мне было нужно, так это связь между Пользователем, которая предсказывает результат / рейтинг модели Участника:
Пример: - Я Пользователь (Рональд) - Есть 6 Участников (P1, P2, P3, P4,P5, P6) - Я должен предсказать, в каком порядке участники будут «пересекать финишную черту».
Таким образом, я сделал таблицу, по предложению Тима, под названием «предсказания» с помощью модели Prediction.И там я буду хранить рейтинг «Пользователь - участник - прогноз».
В ближайшем будущем я посмотрю, как можно хранить несколько прогнозов.Пока все в порядке!
Схема будет выглядеть следующим образом:
Schema::create('predictions', function (Blueprint $table) {
$table->bigIncrements('id');
$table->unsignedBigInteger('user_id');
$table->unsignedBigInteger('participant_id');
$table->unsignedTinyInteger('position');
$table->foreign('user_id')
->references('id')
->on('users');
$table->foreign('participant_id')
->references('id')
->on('participants');
$table->timestamps();
});
И вот как выглядит модель прогнозирования:
class Prediction extends Model
{
public function user()
{
return $this->belongsTo('App\User');
}
public function participant()
{
return $this->belongsTo('App\Participant');
}
}
Поэтому, когда я вошел в систему, я могу получить свой прогноз, выполнив:
Auth::user()->predictions()->orderBy('position')->get();
И когда у меня есть прогноз, я могу получить участника прогноза:
$prediction->participant;
И пользователь прогноза по:
$prediction->user;
Но теперь я могу сделать только один прогноз на пользователя.Мне нужно найти способ связать пользователя с прогнозом, а затем комбинацию участника и позиции с прогнозом.
Так что я могу сказать, получить все прогнозы пользователя.Может быть, у кого-нибудь (или Тима;)) есть предложение?!
Спасибо, и я надеюсь, что кто-то найдет ответы на некоторые вопросы в моем ответе.
Приветствия.