Я хочу получить доступ к столбцу данных с помощью Rails 3, но не смог его получить. Наконец, пустой рендеринг при рендеринге таблицы out.Please сначала проверит мою таблицу, которая приведена ниже ,Не удается получить данные столбца с помощью Rails 3
table- Payment_vendors:
id Receipt_No type v_amount v_date c_date v_name v_status
7 150325006 SWD 60.00 2015-04-15 2015-04-28 Deepak No
8 150325006 GOODS 1195.00 2015-04-15 2015-04-28 Deepak No
Из приведенных выше таблиц я хочу получить доступ к колонку «типа», используя v_name.I попробовала один раз, но получила пустые array.I объясняющих мой код ниже.
payment.html.erb:
<div class="tbpaddingdiv2">
<%= form_for :payment,:url => {:action => "check_type" },remote: true do |f| %>
<div class="totalaligndiv">
<div class="input-group bmargindiv1 col-md-6 pull-left"><span class="input-group-addon text-left"><div class="leftsidetextwidth">Type :</div></span>
<%= f.select(:s_catagory,options_for_select([['Wood','Woods'],['Puja Samagree','GOODS'],['Sweeper','SWD'],['Photo Grapher','PHOTO'],['Burning Assistant','BURNING'],['BRAHMIN','BRAHMIN']],selected: "Type"),{},{:class => 'form-control',:onchange => ("$('#switch_car').submit()")}) %>
</div>
<div id="div_select" style="display:none">
<div class="input-group bmargindiv1 col-md-6 pull-left" ><span class="input-group-addon text-left" ><div class="leftsidetextwidth">Select Vendor :</div></span>
<div id="name-option">
</div>
</div>
</div>
<div class="clearfix"></div>
<div class="tbpaddingdiv1 text-center">
<%= f.submit "submit",:class => "btn btn-success",:id => "switch_car" %>
</div>
</div>
<% end %>
</div>
payments_controller.rb:
class PaymentsController < ApplicationController
def payment
@payment=Vendor.new
respond_to do |format|
format.html
format.js
end
end
def check_type
if params[:commit]=="submit"
@vendor_type=PaymentVendor.where(:v_name => params[:payment][:v_name]).pluck(:type)
else
@v_name=Vendor.where(:s_catagory => params[:payment][:s_catagory]).pluck(:v_name)
end
end
end
check_type.js.erb:
<% if @v_name %>
$("#div_select").css("display", "block");
$("#name-option").html("<%= escape_javascript (render 'nameoption') %>");
$("#name-option").slideDown(350);
<% end %>
<% if @vendor_type %>
console.log('hello')
$(".flash-message").html('<%= escape_javascript flash[:notice] %>');
$("#paymentdetail").css("display", "block");
$("#paymentoption").html("<%= escape_javascript (render 'paymentdetails') %>");
$("#paymentoption").slideDown(350);
<% end %>
После получения всех данных столбца, которые мне нужны, когда type == "SWD", все связанные значения этой строки будут отображаться в таблице ниже.
paymentdetails.html.erb:
<table class="table table-bordered">
<colgroup>
<col class="col-md-1 col-sm-1">
<col class="col-md-1 col-sm-1">
<col class="col-md-3 col-sm-3">
<col class="col-md-3 col-sm-3">
<col class="col-md-4 col-sm-4">
</colgroup>
<thead>
<tr>
<th class="text-center"><input type="checkbox"></th>
<th class="text-center">Sl. No</th>
<th class="text-center">Date</th>
<th class="text-center">Receipt No.</th>
<th class="text-center">Amount</th>
</tr>
</thead>
<tbody>
<tr>
<th class="text-center"><input type="checkbox" id="checkbox1-1" name="checkbox1-1"></th>
<td class="text-center"></td>
<td class="text-center"></td>
<td class="text-center"></td>
<td class="text-center"><i class="fa fa-rupee"></i></td>
</tr>
</tbody>
</table>
Пожалуйста, помогите мне решить эту проблему.
Что точная ошибка, которую вы получаете? См. Рекомендации по [как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask) – screenmutt
@screenmutt: На самом деле я получаю пустой массив на шаблоне. – satya
Здесь вы указали так много информации, что не имеет значения. Выполните следующие шаги (1) Проверьте таблицу вручную, есть ли у нее данные? (2) Проверьте вывод своей команды в контроллере, есть ли там пустой массив? (3) Удалите все несвязанные коды (т. Е. Форму и таблицу). Как только вы будете вытаскивать данные, вы можете использовать его в любом месте. – screenmutt