Создание записей скрепок для детей и внуков в одном действии контроллера

Меня попросили изменить систему загрузки, которая использует скрепку. В настоящее время у пользователей есть много загрузок, но теперь они хотят расширить эту функциональность, предоставляя изображения для загрузки, чтобы помочь пользователям лучше визуализировать загрузки.

Так:

  • Пользователь имеет много загрузок
  • Загрузки имеет один пользователь
  • Загрузка имеет много картинок
  • Фотографии имеют одну загрузку

Прямо сейчас моя Загрузка создается в действии, сидящем в контроллере Users. Но мой клиент хочет, чтобы я дал пользователю возможность отправить несколько картинок вместе с родительской загрузкой. Это мой текущий код:

  def upload_files 
      @user = User.find_by_username(params[:username])
      @uploads = @user.uploads.paginate(:page => params[:page], :per_page => 10)
      1.times { @user.uploads.build }      
      respond_to do |format|
        format.html # uploads.html.erb
        format.json { render json: @user }
      end
  end  

Я не был уверен, как я собирался создавать свои фотографии детей вместе с моей записью в этом методе.

Любые идеи о том, как я могу заставить это работать?

1 ответ

Решение

Я нашел ответ. Если немного больше покопаться, то похоже, что я хотел сделать асинхронно создать запись о ребенке и внуке. Я обновил вопрос, чтобы продемонстрировать такое, и вот код, чтобы сделать это.

  def upload_files 
      @user = User.find_by_username(params[:username])
      @uploads = @user.uploads.paginate(:page => params[:page], :per_page => 10)
      1.times do
        child = @user.uploads.build
        1.times { child.upload_images.build }
      end     
      respond_to do |format|
        format.html # uploads.html.erb
        format.json { render json: @user }
      end
  end

ура

Другие вопросы по тегам