Как заполнить коллекцию на основе выбранного поля другой коллекции? - PullRequest
0 голосов
/ 04 июня 2019

Я занимаюсь разработкой сервиса 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?

...