как можно перенаправить на этап проекта в рельсах по их идентификатору проекта - PullRequest
0 голосов
/ 20 января 2020

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

  def create
    @project = Project.find(params[:project_id])
    @stage = @project.stages.build(stage_params)

    respond_to do |format|
      if @stage.save
        format.html { redirect_to project_stages_path, notice: 'Stage was successfully created.' }
        format.json { render :show, status: :created, location: @stage }
      else
        format.html { render :new }
        format.json { render json: @stage.errors, status: :unprocessable_entity }
      end
    end
  end

rout.rb

  resources :projects do
    resources :stages
  end

рейковые маршруты

   project_stages GET    /projects/:project_id/stages(.:format)                                                   stages#index
                          POST   /projects/:project_id/stages(.:format)                                                   stages#create
        new_project_stage GET    /projects/:project_id/stages/new(.:format)                                               stages#new
       edit_project_stage GET    /projects/:project_id/stages/:id/edit(.:format)                                          stages#edit
            project_stage GET    /projects/:project_id/stages/:id(.:format)                                               stages#show
                          PATCH  /projects/:project_id/stages/:id(.:format)                                               stages#update
                          PUT    /projects/:project_id/stages/:id(.:format)                                               stages#update
                          DELETE /projects/:project_id/stages/:id(.:format)                                               stages#destroy
                 projects GET    /projects(.:format)                                                                      projects#index
                          POST   /projects(.:format)                                                                      projects#create
              new_project GET    /projects/new(.:format)                                                                  projects#new
             edit_project GET    /projects/:id/edit(.:format)                                                             projects#edit
                  project GET    /projects/:id(.:format)                                                                  projects#show
                          PATCH  /projects/:id(.:format)                                                                  projects#update
                          PUT    /projects/:id(.:format)                                                                  projects#update
                          DELETE /projects/:id(.:format)                                                                  projects#destroy

Ответы [ 2 ]

1 голос
/ 20 января 2020

Обычно, используйте: redirect_to project_path(@project)

И вы даже можете использовать: redirect_to @project

Подробности в https://api.rubyonrails.org/classes/ActionController/Redirecting.html

0 голосов
/ 20 января 2020

Изменение redirect_to

redirect_to project_path(@project)

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...