내 사용자가 날짜와 장소를 선택하여 새 예약을 만들 수있는 양식이 있습니다.
모든 예약에는 여러 곳이있을 수 있습니다.양식에 여러 개의 숨겨진 항목을 추가하는 방법
class Reservation < ActiveRecord::Base
has_many :spotations
has_many :spots, :through => :spotations
end
class Spotation < ActiveRecord::Base
belongs_to :reservation
belongs_to :spot
end
class Spot < ActiveRecord::Base
has_many :spotations
has_many :reservations, :through => :spotations
end
현재 사용자에게 select_list를 하나만 지정하면됩니다. 사용 가능한 지점 만 해당 목록에 표시됩니다. (해당 항목의 당일 예약이없는 지점 만 해당)
<%= f.collection_select :spot_ids, @availablespots, :id, :name, {:prompt => true}, {class: "form-control spot_selection", id:"reservation_spot_ids", name:"reservation[spot_ids]", required:"required" } %>
모든 것이 잘 작동합니다.
그러나 나는 모델을 여러 지점을 받아 들였습니다. 나는 사용자가 선택한 지점과 그 지점을 자동으로 (여행 시간 동안) 예약하고 싶습니다.
내 컨트롤러에서 어떻게하는지 잘 모릅니다.
모든 내 장소는 ID로 정렬됩니다. (1 ~ 20) 사용자가 사용 가능한 스폿 id = 4를 선택하면 id = 3도 예약하려고합니다.
누군가가 아이디어가 있습니까? 감사합니다,
만들기 작업에서 지점 n-1을 찾아 모델에 추가합니다. 귀하의 회신에는 – phoet
Thx입니다. my : spot_ids 매개 변수 (해시)가 생성 프로세스로 전송되면 어떻게 액세스 할 수 있습니까? (n-1을 얻으려고) 그리고 나서 어떻게 내가 발견 한 지점 (n-1)을 다시 창조 과정에 넣을 수 있습니까? 귀하의 대답은 – Devlesch