Как я могу отслеживать детали объекта? - PullRequest
0 голосов
/ 30 января 2020

У меня есть модель студента Как

class Student < ApplicationRecord
    belongs_to :classroom, optional: true
end

Модель класса Как:

class Classroom < ApplicationRecord
    has_many :students,dependent: :destroy
    has_many :teachers, dependent: :destroy
    belongs_to :school, dependent: :destroy
end

Теперь я хочу отслеживать каждого ученика в каждом классе.

я хочу следующие детали с уведомлением и датой и отображением на странице шоу

http://localhost: 3000 / школа / 1 / студенты / 68

Для exe. ученик, у которого есть id: 68 и его classroom_id: 2 я хочу показать все действия ученика, у которого есть id 67.

Когда конкретный ученик создан, обновлен, измените его classroom_id, который создает учеников ... et c

Теперь я хочу показать ту студенческую активность в шоу. html .erb

изображения здесь, где мне нужны все эти вещи

Это страница показа ученика, и я хочу, чтобы все эти занятия этого ученика были здесь

Нужно ли создавать таблицу ?? Я хочу описание деятельности, а также. Может ли кто-нибудь помочь мне решить эту проблему?

Я хочу отобразить действия, как показано ниже

Я хочу отобразить все действия, такие как

1 Ответ

0 голосов
/ 30 января 2020

Вы можете создать несколько has_many :through ассоциаций, чтобы сохранить историю изменений ассоциаций. Также вы можете отслеживать изменения в вашем объекте с помощью Active Model Dirty : https://api.rubyonrails.org/classes/ActiveModel/Dirty.html

Или создать отдельную таблицу / таблицы для отслеживания всех изменений.

Или, если вы не хотите реализовывать все это самостоятельно, вы можете использовать gem для этого случая: я думаю, что он самый популярный:
https://github.com/paper-trail-gem/paper_trail

Другие популярные:
https://github.com/chaps-io/public_activity
https://github.com/michelson/espinita

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...