내 코드에서 관리자는 사용자를 추가하고 작업을 할당 할 수 있습니다. 관리자가 사용자를 삭제하기로 결정한 경우 사용자에게 할당 될 수있는 작업이 있는지 확인하고 할당을 관리자에게 업데이트하려고합니다. 사용자 삭제가 내 user_controller 및 Jobs에서 발생하기 때문에 이것이 최선의 방법입니까? 그렇지 않다면, 특히 사용자가 1-N 작업에 배정 된 경우이를 수행하는 가장 효율적인 방법에 대해 조언 해 주실 수 있습니까? 미리 감사드립니다.레일즈 : 여러 컨트롤러/모델을 호출하는 update_attribute?
users_controller.rb
def destroy
if admin?
jobs = Job.where("user_id = ?", params[:id]) #find jobs where user is that being deleted
jobs.each do |job|
job.update_attribute(:user_id, current_user.id) #for each job set the user_id to the admin_id
end
end
redirect_to users_url
end
감사합니다. – user464180