Frage

habe ich eine many-to-many-Zuordnung zwischen einem Benutzerklasse und einer Tabellenklasse. Zusätzlich habe ich eine Eins-zu-viele-Zuordnung zwischen dem Nutzer und der Tabelle (ein Benutzer schließlich besitzt die Tabelle). Ich versuche, alle Tabellen zuzugreifen, die der Benutzer zugreifen kann (im Wesentlichen beiden Verbände Beitritt).

Darüber hinaus wäre es schön, wenn dieser dies mit named_scope zu tun (jetzt scope)

Hier ist, was ich bisher:

class User < ActiveRecord::Base
  acts_as_authentic

  attr_accessible :email, :password, :password_confirmation
  has_many :feedbacks
  has_many :tables

  has_many :user_table_permissions
  has_many :editableTables, :class_name => "Table", :through => :user_table_permissions

  def allTables
    editableTables.merge(tables)
  end

end
War es hilfreich?

Lösung

Ich habe vor kurzem über ein sehr ähnliches Problem gepostet. (Http://stackoverflow.com/questions/4085972/ruby-on-rails-combine-results-from-multiple-has-many-or-has-many-through-associa) Meine beiden Verbände haben die zusätzlichen Handicap, dass man polymorph ist, aber im Wesentlichen, wir beide wollen zwei Assoziationsergebnisse zu kombinieren, einen Sucher verwenden, und haben das Ergebnis für die weitere Verarbeitung zur Verfügung Set mit Suchern, Scopes oder andere AR-Funktionen.

Zur Zeit scheint es nicht möglich, ohne dass genau diese Active Funktionalität zu verlieren (entweder mit ‚def‘, wie Sie oben oder unter Verwendung von: finder_sql und: counter_sql im Verein Setup). Wenn Sie mit einer Art und Weise, dies zu tun kommen, würde ich wirklich zu schätzen, wenn Sie mir sagen könnte.

Danke!

Jens

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top