2015-03-12 2 views
0

Я использую драгоценный камень Cocoon, чтобы связать поля возобновления с одним резюме, и каждый пользователь имеет ОДИН резюме и все работает правильно, используя документацию по кокону. Тем не менее, я хотел бы, чтобы пользователи могли редактировать поля возобновления/вложенные модели непосредственно на странице профиля, не перенаправляясь на страницу вложенных форм кокона. Кроме того, я хотел бы, чтобы пользователи имели возможность добавлять или удалять поле/запись SINGLE. Есть ли вообще способ сделать это?Rails Cocoon Удалить/Уничтожить Single Instance

В моей консоли я был в состоянии успешно удалить все резюме вложенной модель с использованием

User.last.resume.resume_edus.destroy_all 

Где resume.edus 'является вложенной моделью внутри резюме в комплекте с 3 другими «text_fields». Но, как я сказал, мне бы хотелось только отредактировать/удалить один экземпляр resume_edus. Есть идеи?

User.rb

has_one :profile 
has_one :resume 

Resume.rb

belongs_to :user 
has_many :resume_edus 
accepts_nested_attributes_for :resume_edus, 
           reject_if: :all_blank, 
           allow_destroy: true 

Resume_edu

belongs_to :resume 

Резюме Контролер

params.require(:resume).permit(:user_id, :cover, 
           resume_edus_attributes: 
           [:id, :title, :date, :description, :_destroy]) 

ответ

1

Разобрался ответ! Я прошел «ID» resume_edus в действие Удалять

<%= link_to "Delete", resume_path(r.id), method: :delete %> 

Тогда смог найти для указанного ID в текущих пользователей resume_edu модальный специально изолировать и удалить его без удаления других экземпляров модели!

def destroy 
    @instance = current_user.resume.resume_edus.find(params[:id]) 
    debugger 
    @instance.destroy 
    flash[:notice] = "Resume Field Was Deleted" 
    redirect_to profile_path(current_user) 
end 
Смежные вопросы