tabelle frontendgroupmembers zweiter index

Gesperrt
knb
Beiträge: 224
Registriert: Fr 9. Sep 2005, 14:03
Wohnort: Potsdam
Kontaktdaten:

tabelle frontendgroupmembers zweiter index

Beitrag von knb »

Die Tabelle frontendgroupmembers ist meines Erachtens eine simple Verknüpfungstabelle die existiert um folgenden Sachverhalt abzubilden:

"Ein Frontenduser kann Mitglied in mehreren Frontendgroups sein, und eine Frontendgroup kann (selbstverständlich) viele Frontenduser enthalten."

So wie FE-groupmembers derzeit aber implementiert ist, lässt das Tabellendesign auch folgende Regel zu:

"Ein FE-User kann beliebig oft Mitglied der gleichen FE-Group sein"
- was nicht viel Sinn hat.

Das liegt an der Implementierung der Tabelle mit dem anonymen Primärschlüssel idfrontendgroupmember,
einer int-Spalte deren zuletzt vergebener Wert in con_sequence gespeichert wird:

Code: Alles auswählen

CREATE TABLE con_frontendgroupmembers (
  idfrontendgroupmember int(10) NOT NULL default '0',
  idfrontendgroup int(10) NOT NULL default '0',
  idfrontenduser int(10) NOT NULL default '0',
  PRIMARY KEY  (idfrontendgroupmember)
)
Vorschlag zur Verbesserung des Designs: noch einen zweiten Index hinzufügen der verhindert dass ein User immer wieder der gleichen Gruppe hinzugefügt wird:

Code: Alles auswählen

CREATE TABLE con_frontendgroupmembers (
  idfrontendgroupmember int(10) NOT NULL default '0',
  idfrontendgroup int(10) NOT NULL default '0',
  idfrontenduser int(10) NOT NULL default '0',
  PRIMARY KEY  (idfrontendgroupmember),
  UNIQUE KEY ix_feg_feu (idfrontendgroup,idfrontenduser) --- ZUSAETZLICHER INDEX
)
Gibt es irgendwas das dagegen spricht?
Gruss,
Knut
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Nein. Es bringt aber nicht sooo viel, da - zumindest unter Verwendung der entsprechenden Klassen - dieser Fall in der class.frontend.groups.php verhindert wird.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
knb
Beiträge: 224
Registriert: Fr 9. Sep 2005, 14:03
Wohnort: Potsdam
Kontaktdaten:

Beitrag von knb »

Ich habe direkt auf die frontend*- Tabellen zugegriffen, und ca 1500 user importiert die ca 30 Gruppen z.T. mehrfach zugeordnet werden.

Ich muss feststellen, contenido operiert dann am limit - jedenfalls was das Backend / Frontenduserverwaltung angeht. Zum Beispiel, das Laden der Webseite (Frontend-) "Gruppe bearbeiten" : die Anzeige der vielen Users in den Listenfeldern kann ganz schön lange dauern. Ist möglw. reif für ein Feature Request ... Mal sehen.
Gruss,
Knut
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Brauchst Du nicht stellen. Ist bekannt.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Gesperrt