Ruby on rails 如何在RubyonRails的控制器中传递参数

Ruby on rails 如何在RubyonRails的控制器中传递参数,ruby-on-rails,Ruby On Rails,我试图在控制器中传递参数,但它没有返回任何内容。请帮助我如何传递参数。 控制器代码- def print_salary_slip_monthwise @month = params[:salary][:month] @year = params[:salary][:year] @company = params[:salary][:company_id] @company_location = params[:salary][:company_l

我试图在控制器中传递参数,但它没有返回任何内容。请帮助我如何传递参数。 控制器代码-

 def print_salary_slip_monthwise
      @month = params[:salary][:month]
      @year = params[:salary][:year]
      @company = params[:salary][:company_id]
      @company_location = params[:salary][:company_location_id]
      @department = params[:salary][:department_id]
      @salaryslips = Salaryslip.where(month:  @month,year: @year.to_s,employee_id: @salary1)

    end 
form.html.erb-这是我在变更事件中使用的表单

<div class="box">
  <div class="box-header">
    <h3 class="box-title">Salary Slip Department Wise</h3>
  </div><!-- /.box-header -->
  <div class="box-body">
<%= bootstrap_form_for(:pdf_salaries, url: { action: 'print_salary_slip_monthwise'},html: {id: 'pdf_salaries'},remote: true ) do |f| %>
     <div class="row">

      <div class="col-sm-2">
      <label>Year</label>
        <div class="field">
          <%= select :salary,:year,['2015','2016','2017','2018','2019','2020','2021','2022','2023','2024','2025','2026','2027'],{label: 'Select Year',include_blank: " Select Year"},{class: 'form-control'} %>
        </div>
      </div>
      <div class="col-sm-2">
      <label>Month</label>
        <div class="field">
          <%= select :salary,:month, ['January','February','March','April','May','June','July','August','September','October','November','December'],{label: 'Select Month',include_blank: " Select Month"}, class: "form-control" %>
         </div>
      </div>

       <div class="col-sm-2">
            <div class="form-group required">
            <div class="input-group">
              <%= f.select :company_id, all_company,{include_blank: "Select Company"},{onchange:"var a={id:$(this).val(), form : 'employee'}; $.get('/employees/collect_company_location',a,function(response){});"}%>
            </div>
            </div>
          </div>

      <div class="col-sm-2">
            <div class="form-group required">
              <div id="company_location">
                <%= render 'employees/company_location_dropdown' %> 
            </div> 
            </div>
          </div>

       <div class="col-sm-3">
            <div class="form-group required">
            <div class="input-group">
              <div id="department">
                <%= render 'employees/department_dropdown' %> 
            </div> 
            </div>
            </div>
        </div>
      </div>
      <div class="row">
       <div class="col-sm-2">
          <div class="actions">
            <%= f.submit "Display Report", class: "btn btn-sm btn-primary",id: "buttonCtc" %>
          </div>
        </div>
        </div>
         <div class="ajax-progress"></div>
       <div id="employee_list_pdf"></div>
</div>
</div>
<%end%>

按部门划分的工资单
年
月

您可以使用表单或ajax传递参数。将参数传递给服务器(控制器)后,可以将其检查到服务器日志以查看参数。在rails 4中,您需要使用强参数将这些参数保存到数据库中。

以下面的表单字段为例

<%= simple_form_for @user do |f| %>
  <%= f.input :username %>
  <%= f.input :password %>
  <%= f.button :submit %>
<% end %>
访问控制器中的参数,如下所示:

params[:user][:username]  # code in controller

希望这能让您清楚地了解情况。

您需要将它们添加到表单中或在您调用操作的任何位置
params[:user][:username]  # code in controller