Ruby Rails: возможно ли перегрузить индексный метод в ActionController? - PullRequest
1 голос
/ 13 марта 2011

Я хочу что-то вроде ниже

    class CompanyController < ApplicationController
       def index
           #return all of companies 
       end
       def index
           #return companies based filter on company :name, :location, :type (any combination of these)
       end
    end

Ответы [ 2 ]

3 голосов
/ 13 марта 2011

Вы не можете сделать это, но вы можете сделать что-то вроде этого:

class CompanyController < ApplicationController
   def index
      if params[:name] # add ifs etc
        @companies =  Company.where(:name => params[:name])
      else
        @companies = Company.all
      end
   end
end

Я думаю, это то, что вы имеете в виду (скажите мне, если я ошибаюсь!)

2 голосов
/ 13 марта 2011

В Ruby не может быть двух методов с одинаковыми именами. Если у вас есть несколько методов с одним и тем же именем, последний определенный метод будет тем, который использует Ruby.

...