Je souhaite répertorier une table avec des paramètres filtrés de la base de données à la table. Je cède les paramètres par défaut pour eux, mais je reçois l'erreur: nombre incorrect d'arguments (0 pour 4)mauvais nombre d'arguments (0 pour 4) Où est-ce que je me suis trompé?
Dans mon modèle:
class Company < ActiveRecord::Base
scope :filtered, lambda {|count_min, count_max, city, company_status| where(:company_status => company_status, :ap_veh_count => count_min..count_max, :office_adress_city => city,)}
Contrôleur:
class LeadsController < ApplicationController
before_filter :confirm_logged_in
def list
params[:sort] ||= "name"
params[:direction] ||= "asc"
params[:company_status] ||= "3"
params[:count_min] ||= "8"
params[:count_max] ||= "20"
params[:city] ||= "Rīga"
@companies = Company.filtered.order(params[:sort] + " " + params[:direction])
end
Vu:
<% @companies.each_with_index do |company, i| %>
<tr>
<td><%= i + 1 %></td>
<td><%= company.ap_veh_count %></td>
<td><%= link_to company.name, {:action => 'view', :id => company.id} %></td>
<td><%= company.office_adress_city %></td>
<td><%= company.phone %></td>
<td><%= company.company_field %></td>
<td><%= company.email %></td>
<td><%= 'taisīt' %></td>
<td><%= link_to "Atlasīt", {}, :class => 'btn btn-success btn-mini' %></td>
</tr>
<% end %>
Peut-être pouvez-vous m'aider à définir par défaut toutes les valeurs? :) – kipeens
Bien sûr, j'ai mis à jour la réponse. – moritz
OK, mais je dois encore mettre des valeurs par défaut. Je veux qu'il filtre toutes les valeurs possibles de cette colonne de DB – kipeens