я модель называется Offer
, а другой называются PurchasinGroup
Rails: Условные вложенные атрибуты в форме редактирования
Offer
имеет много PurchasingGroups
Offer
принимает вложенных атрибутов для PurchasingGroups
При создании предложения вы можете добавить как и многие покупательные группы.
PurchasingGroup
имеет логический атрибут, называемый active
.
при редактировании Offer
вы можете увидеть все созданные группы покупок, однако я хочу, чтобы пользователь редактировал только активные группы покупок и не отображал неактивные группы покупок.
Это мое edit
действие в offers_controller.rb
:
def edit
@offer = Offer.find(params[:id])
end
И это моя форма (только та часть, которая имеет значение):
<fieldset>
<legend>Purchasing groups</legend>
<%= f.fields_for :purchasing_groups do |builder| %>
<%= render partial: 'purchasing_group_fields', locals: { f: builder } %>
<% end %>
</fieldset>
В форме редактирования все закупочные группы показываются для редактирования, я хочу показывать только те, которые являются активными Я имею в виду purchasing_group.active == true
Как это лучший способ сделать это?
Чудесная !, я не знаю, что вы можете передать запросы ' f.fields_for', большое вам спасибо, что вы спасли мой день. С уважением! – SsouLlesS
Привет, добавьте то, что вы сказали мне, что он работает нормально, однако, когда есть ошибка в форме, группа покупки сбрасывается, я имею в виду, что она не отображает последние введенные значения ... что является проблемой юзабилити ... – SsouLlesS
может вы прикрепляете код контроллера? – richfisher