diff --git a/app/controllers/jobs_controller.rb b/app/controllers/jobs_controller.rb index bf56092..f080bcb 100644 --- a/app/controllers/jobs_controller.rb +++ b/app/controllers/jobs_controller.rb @@ -18,7 +18,7 @@ class JobsController < ApplicationController def update if @job.update(job_params) - redirect_to @job + redirect_to job_path(@job, project_id: @job.project.id) else render :edit end @@ -26,13 +26,14 @@ class JobsController < ApplicationController def create if @job = Job.create(job_params) - redirect_to @job + redirect_to job_path(@job, project_id: @job.project.id) else render :edit end end def destroy + @project = @job.project if @job.destroy redirect_to jobs_path(project_id: @project.id) else diff --git a/app/models/job.rb b/app/models/job.rb index 83c05b7..7df26bf 100644 --- a/app/models/job.rb +++ b/app/models/job.rb @@ -4,6 +4,8 @@ class Job < ActiveRecord::Base :name, presence: true + belongs_to :project + scope :project, ->(project) { where(project_id: project.id) } def time_logged diff --git a/app/views/jobs/_form.html.erb b/app/views/jobs/_form.html.erb index d570ef8..64afb95 100644 --- a/app/views/jobs/_form.html.erb +++ b/app/views/jobs/_form.html.erb @@ -21,8 +21,7 @@

- <%= f.label :project_id %> - <%= f.number_field :project_id %> + <%= f.hidden_field :project_id, value: @project.id %>