2012-01-02 5 views
1

work_order 모델과 주행 거리 모델이 있습니다. 각 작업 주문에 대해 주행 거리계를 추가하려고하지만 작업 지시를 연결하지 않고 주행 거리 판독 값을 추가 할 수 있어야합니다.accepts_nested_attributes_for가 올바르게 작동하지 않습니다.

#odometer.rb 
class Odometer < ActiveRecord::Base 
    has_one :work_order 
    accepts_nested_attributes_for :work_order 
end 

#work_order.rb 
class WorkOrder < ActiveRecord::Base 
    belongs_to :odometer 
end 

내가 양식 설정과 같이 있습니다 :이 주행 거리계 물건을 저장 얻이 수없는 것

= form_for @work_order do |f| 
     = f.label :created_at, "Start Date" 
     = f.text_field :created_at, :class => "datepicker", :value => @work_order.created_at.nil? ? '' : @work_order.created_at.strftime('%Y-%m-%d') 
     %br 
     = f.label :number, "Work Order #" 
     = f.text_field :number 
     %br 
     = f.label :complete_date, "Finish Date" 
     = f.text_field :complete_date, :class => "datepicker", :value => @work_order.complete_date.nil? ? '' : @work_order.complete_date.strftime('%Y-%m-%d') 
     %br 
     = f.label :mechanic_id 
     = f.collection_select :mechanic_id, @mechanics, :id, :display_name 

     = f.fields_for :odometer do |o| 
     = o.label :mileage 
     = o.number_field :mileage 
     = f.label :equipment_id 
     = f.collection_select :equipment_id, @all_equipment, :id, :name 

     = f.label :description 
     = readable_text_area f, :description, :style => "width:630px;height:100px;" 

     = f.submit 'Save' 

는이 같은 모델 설정을 가지고있다. 나는 완전히 잘못된 것을하고 있다고 확신하지만, 그것을 이해할 수 없다.

도움 주셔서 감사합니다.

토비

답변

1

모양이 약간 뒤쪽으로 보입니다. 모델별로 보면 OdometerWorkOrder의 중첩 속성을 허용합니다. 그러나 그 형식은 다른 방향이라고 말해줍니다.

체크 아웃이 Railscast http://railscasts.com/episodes/196-nested-model-form-part-1

+0

나는 railscast 여러 번 여기를 게시하지 바라고 있음을 보았다. 나는이 링크와 조언을 고맙게 생각한다. 그렇게 할 다른 방법이 보이고 효과가 있습니까? 나는 꽤 많은 것을하고있다. 내가 도울 수 있다면 나는 작업 순서 모델에 odometer_id를 갖고 싶지 않습니다. –

관련 문제