Организация базы данных Active Record

Я создаю свое первое веб-приложение в качестве задания. Я пишу свое проектное предложение, и часть предложения состоит в том, чтобы создать схему.

Концепция приложения проста, это создание журнала тренировок, где пользователи могут создавать, редактировать и удалять тренировки, которые хранятся в организованном журнале.

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

Пока я придумал этот макет. Я предполагаю, что trainings.exercises.results соберет правильную информацию, но я хотел знать, был ли их более аккуратный способ организовать эти данные, поскольку это мой первый раз, и я пытаюсь создать это, используя лучшие практики.

тренировки

название столбца

id
имя
user_id
updated_at

упражнения

название столбца

идентификатор
название
ид_тренировки
updated_at

Результаты

название столбца

id
id_упражнения
id_тренировки
наборы
повторений
продолжительность
updated_at


person hancho    schedule 21.08.2017    source источник


Ответы (1)


Насколько я понимаю, Workouts has many exercises, Exercise has one Result.

Если да, то вам не нужен идентификатор тренировки в таблице результатов.

Для получения записей по workout используйте следующий код:

w = Workout.find(workout_id)
w.exercises.each do |e|
   puts "Exercise=#{e.name} and result = #{e.result}}
end
person Chakreshwar Sharma    schedule 21.08.2017