Ruby on Rails: инвертируйте флажок или снимите флажок при отправке - PullRequest
0 голосов
/ 15 апреля 2019

У меня есть веб-сайт, на котором вы можете зарегистрироваться на некоторые мероприятия, которые я назвал «переговоры».После регистрации «гость» получает подтверждение по электронной почте со сгенерированной ссылкой для отказа от подписки.По ссылке открывается форма со всеми перечисленными событиями, на которые гость зарегистрировался.

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


Модели

class Guest < ApplicationRecord
  has_and_belongs_to_may :talks
end

class Talk < ApplicationRecord
  has_and_belongs_to_may :guests
end

Форма отписки

<%= form_for @guest do |f| %>
  <% f.collection_check_boxes :talk_ids, @guest.talks, :id, :name do |b| %>
    <%= b.check_box %>
    <%= b.object.name %>
  <% end %>

<input type="submit" value="Unsubscribe">
<% end %>

Функция обновления после отправки

def update_talks
  @guest = Guest.find(params[:id])
  if @guest.update(guest_params)
    redirect_to root_url
  else
    flash[:notice] = "Failed"
  end
end

Мне не удалось найти решение, поэтому я надеюсь, что вы, ребята, можете сказать мне, как инвертировать флажок?

1 Ответ

0 голосов
/ 15 апреля 2019

Я очень новичок в Rails, но, может быть, будет лучше, если флажки уже будут установлены

...