2016-07-13 5 views
0

중첩 된 양식에 누에 고치를 사용하고 있습니다. 따라서 실험을 추가 할 때 모두 동일한 양식을 통해 유사 광고를 추가 할 수 있습니다. 편집을 쉽게하기 위해 gem 'best_in_place', '~> 3.1 '을 설치했으며, 업데이트 후에 문제가 발생했습니다. best_in_place 도우미를 통해 설명을 클릭하고 변경할 수 있습니다. 데이터베이스가 업데이트되고 잠시 동안 변경 내용이 표시되면 사라지고 변경 전의 상태로 돌아갑니다. 페이지를 새로 고침하면 변경 사항이 표시됩니다. 따라서 페이지를 새로 고침하여 변경 사항을 표시합니다. 내가 제대로하고 독서 후 작업을 best_in_place되지 수 , 나는 그것이best_in_place - 페이지를 새로 고침하여 변경 사항 표시

routes.rb

resources :advertisers do 
     resources :experiments do 
      resources :variations 
     end 
    end 
    resources :variations, only: [:update, :show] 

내가 best_in_place를 사용을 작동하도록 내 중첩 된 경로 이외의 경로를 고집 결국 내 실험 파일

<% @experiment.variations.each do |variation| %> 
         <h3><i class="fa fa-square"></i> <%= variation.name %></h3> 
          <p class="data-row"> 
           <span class="data-name">URL</span>        
           <span class="data-value"><%= variation.url %></span> 
          </p> 
          <p class="data-row"> 
           <span class="data-name">Description</span>        
           <div><%= best_in_place variation, :description, :as => :textarea %></div> 
          </p> 
    <% end %> 

을 show.html.erb 내부 나는 문제가 내 변화의 업데이트 작업에 생각합니다. 여기 내 변화 컨트롤러 어떤 도움을 크게 감상 할 수

class VariationsController < ApplicationController before_action :find_variation def update @variation.update(variation_params) end private def variation_params params.require(:variation).permit(:description, :name, :url) end def find_variation @variation = Variation.find(params[:id]) end end 

입니다!

답변

0

어떻게 수정했는지는 확실하지 않지만 작동은 확실하지 않습니다. 여기 내가 한 일이있다.

나는

respond_to :html, :json 


def update 

    @variation = Variation.find(params[:id]) 
    @variation.update_attributes(variation_params) 
    respond_with(@variations) 
end 

모든 작품 내 업데이트 작업을 변경했습니다.

업데이트 : best_in_place 아래에 json을 사용하지만 컨트롤러가 json에 제대로 응답하지 않았습니다. 그래서 respond_to와 respond_with를 추가함으로써 제대로 작동합니다.

관련 문제