2016-06-08 1 views
0

У меня есть каталог, в котором есть категории (думаю, обувь, рубашки, брюки). В каталоге указаны бренды (jinco, big dog, mossimo), которые будут доступны для этих категорий, но мы хотим, чтобы у вас была возможность отключить бренд для категории. Поэтому в области обуви мы хотим показать большую собаку и мосимо, в штанах мы хотим показать только jinco.form_for для сохранения/удаления из many_to_many соединительной таблицы

Так что я нахожусь в странице редактирования каталога, и и я отображая каждую категорию на столе что-то вроде этого:

Категория       |       Jinco                         |       Mossimo             |       Big Dog
Брюки                 |       Флаг       |       Флаг       |       Флажок
Рубашка                     |       Флаг       |       Флаг       |       флажке
обувь               |       Флаг       |       Флаг       |       Флажок

Я хочу, чтобы создать новую запись catalog_brand когда флажок (с использованием AJAX дистанционного управления: верно), а затем удалить запись catalog_brand, когда флажок не выбран.

Модели:

Каталог (has_many: catalog_brands)
catalog_brands (belongs_to: каталог, BELONGS_TO: system_categories)
system_categories (has_many: catalog_brands)

Я на редактирования действия контроллера каталога и я знаю, что мне нужно использовать тег field_for, но я не уверен, как структурировать действия Create и Delete в таблице catalog_brands, чтобы это произошло. Думаю ли я это и его достаточно просто, как обычное создание/удаление, которое обычно выполняется?

+0

Вы можете показать нам свой контроллер? – Cyzanfar

+0

@Cyzanfar Для какой модели? – cal1801

ответ

0

Если вы используете check_box, я не думаю, что ваш лучший выбор - remote: true, скорее вам нужно будет прикрепить событие к своим флажкам, которые будут срабатывать после проверки. Однако, если вы хорошо разбираетесь в CSS или каркасах проектирования, вы можете создать тег button/anchor, чтобы он выглядел как флажок, и присоединить к ним remote: true, но он также приносит уровень сложности, поскольку вам нужно будет заменить URL-адрес когда он проверен. Поэтому, в конце концов, привязка eventlistener к вашему флажку, может быть лучшим подходом. A previous SO question has a little description of how you could listen for clicks on the checkboxes

Сообщите мне, если я был в состоянии помочь или найти другие рекомендации, которые могут вам потребоваться.

Смежные вопросы