2016-05-18 1 views
0

Моего JSON API является, как показано ниже,Создание вложенной сборки для объекта рельсов

{ "schedule_id": "1", 
    "latitude" : 17.4327, 
    "longitude" : 78.4302, 
    "device_id": "123test", 
    "audit_compliances":[ 
    { 
     "value": "Yes", 
     "score": 10, 
     "remarks": "some remarks", 
     "private_remarks": "some remarks", 
     "check_point_id": 1, 
    "audit_compliance_documents":[{ 
     "score": 10, 
     "remarks": "some remarks", 
    }] 
    }] 

я имею отношение к этой БД я хочу, чтобы сохранить все эти записи сразу, поэтому я хочу, чтобы инициализировать объект с подробной информацией и строить вместе с этим и внутренние объекты. Началось такое построение, но как я могу построить внутреннюю сборку для документов.

submission = Submission.new(audit_schedule_id: params[:schedule_id], 
    latitude: params[:latitude], longitude: params[:longitude], 
    device_id: params[:device_id]) 
params[:audit_compliances].each do |audit_compliance| 
    submission.audit_compliances.build(
    value: audit_compliance[:value], 
    score: audit_compliance[:score], 
    remarks: audit_compliance[:remarks], 
    private_remarks: audit_compliance[:private_remarks], 
    check_point_id: audit_compliance[:check_point_id]) 
end 

ответ

0

передать ваш JSON парам в представлении Params непосредственно как этот

params[:submission] = json_params; 

Submission.create(params[:submission]); 

Это создаст как если ваше отображение правильно ........