2015-05-01 2 views
1

Мне нужно, чтобы после действия пользователя страница должна была точно совпадать с Rails 3. Я объясняю свой код и код ниже.Перенаправление на ту же страницу с использованием Rails 3

home.html.erb:

<div class="col-md-6" style="float:none; margin:auto;"> 
     <%= form_for :sdf ,:url => {:action => "scan_report" },:html => {:id =>"form-id" } ,remote: true do |f| %> 
     <% if params[:receipt_no] %> 
     <div class="input-group bmargindiv1 col-md-12"> <span class="input-group-addon text-left">Receipt No. Scan :</span> 
      <%= f.text_field :Receipt_No,:class => "form-control", :value => params[:receipt_no],:id => "scan-field",:onfocus => ("$('#rcd_btn').submit()") %> 
     </div> 
     <% else %> 
     <div class="input-group bmargindiv1 col-md-12"> <span class="input-group-addon text-left">Receipt No. Scan :</span> 
      <%= f.text_field :Receipt_No,:class => "form-control",placeholder:"Receipt No. scan" %> 
     </div> 
     <% end %> 
     <%= f.submit "Submit",:id => "rcd_btn",:style => "display:none;" %> 
     <% end %> 
     <div class="clearfix"></div> 
    </div> 
<div class="block block-themed" style="display:none" id="whole-div6" > 
    <div class="block-title"> 
     <div class="block-options"> 
      <a href="javascript:void(0)" class="btn btn-option enable-tooltip active" data-toggle="block-collapse" title="Toggle block's content"><i class="fa fa-arrow-down"></i></a> 
     </div> 
      <h4>Wood Slip</h4> 
    </div> 
    <div id="wood-puri"> 

    </div> 
</div> 

С помощью данной формы, когда пользователь поместит квитанцию ​​нет, позволяет говорить 150325006/1 и нажав клавишу ввода внизу страницы будет отображаться.

_wood.html.erb:

<div class="block-content" style="display:none;"> 
     <div class="timeline-container"> 
       <div class="input-group bmargindiv1 col-md-6 pull-left"><span class="input-group-addon text-left"><div class="leftsidetextwidth">Receipt No :</div></span> 
       <input type="text" class="form-control" value= "<%= @sdf.Receipt_No %>"> 
       </div> 
       <div class="input-group bmargindiv1 col-md-6 pull-left"><span class="input-group-addon text-left"><div class="leftsidetextwidth">Date &amp; Time :</div></span> 
       <input type="text" class="form-control" value= "<%= @sdf.Created_On %>"> 
       </div> 
       <div class="input-group bmargindiv1 col-md-6 pull-left"><span class="input-group-addon text-left"><div class="leftsidetextwidth">Deceased Name :</div></span> 
       <input type="text" class="form-control" value= "<%= @hcsy.Deceased_Name %>"> 
       </div> 
       <div class="input-group bmargindiv1 col-md-6 pull-left"> <span class="input-group-addon text-left"><div class="leftsidetextwidth">Donor Name :</div></span> 
       <input type="text" class="form-control" value= "<%= @sdf.Doner_Name %>"> 
       </div> 
       <div class="input-group bmargindiv1 col-md-12 pull-left"> <span class="input-group-addon text-left"><div class="leftsidetextwidth">Amount :</div></span> 
       <input type="text" class="form-control" value= "<%= @woods.Amount %>"> 
       </div> 
       <div class="clearfix"></div> 
     </div> 
     <div class="block block-themed themed-asphalt"> 
     <div class="block-title"><h5>Office Use</h5></div> 
      <div class="block-content full"> 
       <%= form_for :vendor,:url => {:action =>"payment" } do |f| %> 
        <div class="totalaligndiv"> 
         <div class="input-group bmargindiv1 col-md-6" style="margin:auto; float:none;"><span class="input-group-addon text-left"><div class="leftsidetextwidth">Select Vendor :</div></span> 
         <%= f.select(:v_name,options_for_select(Vendor.where(s_catagory: "Woods").pluck(:v_name),selected: "Select vender name"),{},{:class => "form-control",:prompt => 'Selected Vendor'}) %> 
         </div> 
         <div class="totalaligndiv"> 
         <%= f.hidden_field :receipt_no, :value => @sdf.Receipt_No %> 
         </div> 
         <div class="totalaligndiv"> 
         <%= f.hidden_field :amount,:value => @woods.Amount %> 
         </div> 
         <div class="totalaligndiv"> 
         <%= f.hidden_field :date,:value =>@sdf.Created_On %> 
         </div> 
         <div class="clearfix"></div> 
         <div class="tbpaddingdiv1 text-center"> 
         <%= f.submit "Add to Payment",:class => "btn btn-success" %> 
         </div> 
         <div class="clearfix"></div> 
       </div> 
       <% end %> 
      </div> 
     </div> 
    </div> 

Из вышеприведенного пользователя страницы будет выбрать одно имя поставщика, когда пользователь нажмет на кнопку операция БД будет происходить и пользователь будет оставаться на том же представить которая будет отображаться ранее (т. е. пользователь останется на этой странице _woods.html.erb и после отправки) кнопка отправки нажата, а «Добавить в платеж» исчезнет до следующего получения без сканирования. Мой файл контроллера указан ниже.

homes_controller.rb:

class HomesController < ApplicationController 
    def home 
     @sdf=TSdf.new 
     respond_to do |format| 
      format.html 
      format.js 
     end 
    end 
    def scan_report 
      if @sdf=TSdf.find_by_Receipt_No(params[:sdf][:Receipt_No]) 
       @hcsy=THcsy.find_by_Sdp_Id(@sdf.Sdp_Id) 
       @hcsy_deatils=THcsyDetails.find_by_HCSY_ID(@hcsy.id) 
       @woods=THcsyFundTypeMaster.find_by_Fund_Type_Code(1) 
       @burn=THcsyFundTypeMaster.find_by_Fund_Type_Code(2) 
       @good=THcsyFundTypeMaster.find_by_Fund_Type_Code(3) 
       @swd=THcsyFundTypeMaster.find_by_Fund_Type_Code(5) 
       @photo=THcsyFundTypeMaster.find_by_Fund_Type_Code(6) 
       @vendor=Vendor.new 
       flash[:notice]=" number matched" 
      else 
       splitted = params[:sdf][:Receipt_No].split('/') 
       receipt = splitted[0] 
       table_id = splitted[1] 
       @sdfs=TSdf.find_by_Receipt_No(receipt) 
       if @sdfs 
        @hcsys=THcsy.find_by_Sdp_Id(@sdfs.Sdp_Id) 
        @fund_details=THcsyFundTypeMaster.find_by_Fund_Type_Code(table_id) 
       else 
        flash[:notice]="Scan number not found" 
       end 
      end 
    end 
    def payment 
     @adds=THcsyFundTypeMaster.find_by_Amount(params[:vendor][:amount]) 
     @vendor=PaymentVendor.create(:Receipt_No => params[:vendor][:receipt_no],:c_date => Date.today.to_time_in_current_zone,:v_date => params[:vendor][:date],:v_amount => params[:vendor][:amount],:v_catagory => @adds.Fund_Type_Name,:v_name => params[:vendor][:v_name],:v_status => "No") 
     if @vendor 
      flash[:notice]="Vendor added the payment" 
      flash[:color]="valid" 
      redirect_to :action => "home" 
     else 
      flash[:alert]="vendor could not added the payment" 
      flash[:color]="invalid" 
      render 'home' 
     end 
    end 
end 

scan_report.js.erb:

<% if @fund_details.Fund_Type_Name=="Woods" %> 
      $("#whole-div6").css("display", "block"); 
      $("#wood-puri").html("<%= escape_javascript (render 'woods') %>"); 
      $("#wood-puri").slideDown(350); 
     <% end %> 

Здесь внутри оплаты действия теперь я перенаправлять страница .Но мне нужна пользователь останется на этой странице _wood.html.erb: после нажатия кнопки «Добавить к оплате». Пожалуйста, Помоги мне.

+0

Я довольно смущен. _woods.html.erb является частичным, но я не вижу, что он отображается в любом месте вашего кода. – jphager2

ответ

0

Вы пытались: назад? т.е. в контроллере

respond_to do |format| 
    format.html { redirect_to :back } 
end 

Он будет перенаправлять страницу, откуда был получен запрос.

Смежные вопросы