Nei miei Rails 4 applicazione Ho questa impostazione:Come rimuovere i parametri vuoti dall'hash params?
class InvoicesController < ApplicationController
def index
@invoices = current_user.invoices.search(params)
end
...
end
class Invoice < ActiveRecord::Base
belongs_to :user
def self.search(params)
data = all
data = data.where("number LIKE ?", "%#{params[:number]}%") if params[:number]
data = data.where("total > ?", params[:minimum]) if params[:minimum]
data = data.where("total < ?", params[:maximum]) if params[:maximum]
data
end
...
end
Il problema è che ho un sacco di altri parametri GET che sono tutti parte del params
hash. Come posso rimuovere i parametri vuoti dall'URL in modo che io non finisca con URL come:
/invoices?after=&before=&maximum=&minimum=&number=
Grazie per qualsiasi aiuto.
Per chiarire, stai dicendo che, quando si invia il modulo, non si desidera che i campi vuoti da presentare tramite l'URL? In tal caso, potrebbe essere necessario utilizzare JS per intercettare il modulo e rimuovere gli elementi vuoti prima di inviarlo. –