Легко, запись должна приниматься как для категории, так и для преимущества. Вы можете создать новый объект с помощью клиентского JavaScript, посмотрите эти эпизоды (все 3 из них), они содержат все, что вам нужно знать:
http://railscasts.com/episodes/196-nested-model-form-part-1
Пришлите мне электронное письмо, если вы не можете заставить его работать, я должен был переписать его, но идея та же.
Вот JavaScript, который я использовал:
//This function adds the fields for the photo association
function add_fields(id, association, content) {
var new_id = new Date().getTime();
var regexp = new RegExp("new_" + association, "g");
var regexp2 = new RegExp("new\\]\\[" + association, "g");
content = content.replace(regexp, new_id);
content = content.replace(regexp2, new_id);
$(id).append(content);
}
def link_to_add_fields(name, id, f, association, partial)
new_object = f.object.class.reflect_on_association(association).klass.new
fields = f.fields_for(association, new_object, :child_index => "new") do |builder|
render(:partial => partial, :locals => {:form => builder})
end
link_to_function(name, "add_fields( \"#{id}\", \"#{association}\", \"#{escape_javascript(fields)}\" ) " )
end