Я занимаюсь разработкой сервиса RoR и застрял в этой проблеме.
У меня есть следующие модели и представление, которое является основной simple_form
формой. Требуемое поведение должно быть следующим: выбрать клиента из коллекции, а затем, основываясь на выбранном клиенте, выбрать один из проектов клиента из другой коллекции.
Моя проблема в том, что я не могу найти способ сделать это. Чтобы быть более понятным, я не могу найти способ передать идентификатор выбранного клиента в следующую коллекцию.
client.rb
class Client < ApplicationRecord
has_many :projects
end
project.rb
class Project < ApplicationRecord
belongs_to :client
end
_form.html.erb
<%= simple_form_for @day do |f| %>
<%= f.input :client_id, collection: Client.all %>
<%= f.input :project_id, collection: Project.where(<it should take client_id value) %>
<%= f.button :submit %>
<% end %>
Я надеюсь, что это достаточно ясно и, конечно, не стесняйтесь спрашивать любую скрытую информацию.
Заранее спасибо за любую помощь.
РЕДАКТИРОВАТЬ: С помощью Mr Yoshiji я вполне понял проблему, и мои поиски стали более точными. Так что я нашел этот вопрос (клянусь, я не видел его раньше).
Rails 4: Как обновить collection_select на основе другого collection_select через AJAX?