Мне нужна ваша помощь!Полиморфная ассоциация: Создать форму документа
Когда пользователь создает новый документ, он должен назначить его проекту или задаче.
Если пользователь в данный момент выбирает проект, идентификатор не будет сохранен в documentable_id только documentable_type, но с задачами работает отлично.
Где моя ошибка?
Document.rb
belongs_to :documentable, polymorphic: true
belongs_to :project
belongs_to :task
Project.rb
has_many :documents, :as => :documentable
Task.rb
has_many :documents, :as => :documentable
documents_controller.rb
def create
@document = Document.new(document_params)
@document.user_id = current_user.id
if @document.save
redirect_to @document
else
render "new"
end
end
def document_params
params.require(:document).permit(:attachment, :is_unlocked, :is_paid, :brutto, :netto, :has_skonto, :supplier_id, :due_at, :tax, :number, :documentable_id, :documentable_type)
end
документы/_form.html.erb
<div class="form-group">
<%= f.collection_select :documentable_id, Project.all, :id, :name, { prompt: "Projekt zuordnen"} %>
</div>
<div class="form-group">
<%= f.collection_select :documentable_id, Task.all, :id, :id, { prompt: "Aufgabe zuordnen"} %>
</div>
Спасибо за ваш быстрый ответ! Включить/отключить с помощью javascript или есть такая функция в рельсах? –