Pergunta

Vamos dizer que tenho um Company que tem muitos Employees e cada Employee pode ter muitos Companies.

Basicamente eu vou ter:

class Employee < ActiveRecord::Base
  has_and_belongs_to_many :companies
end

e

class Company < ActiveRecord::Base
  has_and_belongs_to_many :employees
end

Mas então eu estou confuso sobre como eu poderia fazer as coisas como:

  • Todos os empregados de uma empresa com o nome começando por "John"
  • Todos os empregados de uma ordem empresa por nome em primeiro lugar, e-mail segundo.

Existe alguma magia Eu não sei sobre? O exemplo é apenas aqui para o demo, fique à vontade para fazer suposições ou alterá-lo se ele ajuda a explicar melhor.

Foi útil?

Solução

Para obter todos os funcionários que começam com "John", que você pode fazer (é claro que existem muitas outras maneiras de fazer isso, mas de qualquer maneira):

some_company.employees.find(:all, :conditions => "name LIKE 'John%'")

Para ordenação dos funcionários é ainda mais bonita:

class Company < ActiveRecord::Base
  has_and_belongs_to_many :employees, :order => "name, email"
end

Há muito mais você pode fazer com ActiveRecord. Eu sugiro que você tente ler-se na http://guides.rubyonrails.org/ ou relógio http://railscasts.com/ para saber mais sobre a beleza de RoR =)

Espero que ajude!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top