Для начала я знаю, что я пытаюсь сделать, это не типично для Rails. Я открыт для предложений по лучшим альтернативам. Я новичок с рельсами, поэтому предложения приветствуются:)
По сути, у меня есть панель уведомлений с 5 уведомлениями. После того, как пользователь щелкнет и увидит уведомления, я хочу установить столбец в базе данных, называемый увиденным, в значение true.
Вот моя функция Jquery:
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("div#count").html("<%= escape_javascript(render('shared/notification_count')) %>");
});
});
</script>
А вот код, который я пытаюсь выполнить только после клика (находится в _notification_count.html.erb)
<% notification_ids = current_user.notifications.map(&:id).join(', ')%>
<% sql = "UPDATE notifications SET SEEN = true where id IN(#{notification_ids})" %>
<% User.connection.select_all(sql) %>
Однако, похоже, что этот код выполняется автоматически при загрузке страницы, а не после щелчка. В чем моя проблема?