Простая система личных сообщений. Как пометить как прочитанное - PullRequest
0 голосов
/ 08 мая 2018

Я создаю приложение в Laravel и использую красноречивый ORM.

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

Я хочу показать возможность чтения / непрочитания. Будет работать столбец в виде логического значения с именем read, значение по умолчанию которого равно 0. Когда пользователь щелкает по нему, чтение может измениться на 1, и сообщение помечается как прочитанное.

Как мне обновить атрибут при открытии сообщения.

Ответы [ 3 ]

0 голосов
/ 08 мая 2018

, если вы делаете простую систему обмена сообщениями, сохраните флаг с read. Когда пользователь нажимает на сообщение, возьмите его идентификатор и обновите записи read с 1 и непрочитанным 0, используя действие обновления.

0 голосов
/ 08 мая 2018

Laravelish способ состоит в том, чтобы использовать столбец с именем read_at и установить его на NULL, если он не прочитан, и текущую метку времени при чтении.

Миграционная часть read_at может выглядеть следующим образом:

$table->timestamp('read_at')->nullable()->default(null);

Примечание : не забудьте добавить read_at в $dates массив , так что работать с read_at просто - углеродный способ.

0 голосов
/ 08 мая 2018

Если вы не используете интерфейсную среду, такую ​​как Angular, или реагируйте, сделайте ajax-запрос к функции вашего контроллера. В функции контроллера обновите таблицу БД, используя ORM или Query Builder. Используя Ajax, вы можете сделать это, не влияя на пользовательский вид.

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