2017-03-03 2 views
1

Ich möchte das Benutzer-Plugin erweitern, so dass ich das Feld Benutzername entfernen und meine Tabelle nach Bedarf anpassen kann. Ich habe die Github-Dokumentation zum Erweitern des Plugins gesehen, aber das hilft mir nicht viel. Ich habe versucht, UserTable.php zu erweitern, aber es gibt mir Fehler Unbekannte Methode "registrieren". Bitte schlagen Sie den besten Weg oder einfachen Code vor.So erweitern Sie das Cakedc-Benutzer-Plugin, um eine eigene Tabelle in CakePHP zu verwenden 3

Antwort

1

Aktivieren Sie diese speziell erstellt cloud9 Umgebung zu zeigen, wie das Modell und die Tabelle als Beispiel erweitern: https://ide.c9.io/steinkel/users-example-custom-table

  • Das Beispiel verwendet eine my_users benutzerdefinierte Tabelle
  • Das Beispiel verwendet eine benutzerdefinierte Tabellenklasse MyUsersTable die Verlängerung CakeDC/Users.Users Tabelle
  • Beachten Sie, dass das Feld "Benutzername" in SocialLogin und anderen Funktionen standardmäßig verwendet wird, wenn Sie es entfernen möchten, stellen Sie sicher, dass Sie die App so konfigurieren, dass sie sich auf ein anderes Feld verlässt.

Grundsätzlich ändert sich getan, um eine benutzerdefinierte Tabelle zu verwenden sind:

  • eine neue Datenbanktabelle erstellen, die ursprünglichen Felder passende und Hinzufügen/Entfernen von Feldern auf der Grundlage Ihrer Bedürfnisse
  • eine neue Tabelle Klasse erstellen in Ihre Anwendung, die CakeDC/Users.Users Tabelle
  • Aufschalten erforderlichen Methoden, wie Validierung oder Sucher in der Tabelle Klasse erweitert
  • Stellen Sie Ihren Tisch im Konfigurationsschlüssel ‚Users.table‘ wie wir di d in 'config/users.php'

    $config = [ 
        'Users' => [ 
         //Table used to manage users 
         'table' => 'MyUsers', 
        ] 
    ]; 
    return $config; 
    

und Sie sind fertig :)

+0

Vielen Dank für Erklärung in Details, aber ich bin nicht in der Lage Lage clound9 zu öffnen, weil es Kreditkarte benötigen. Bitte zeigen Sie das Beispiel auf andere Weise –

+0

Hier ist der vollständige Quellcode> https://dl.dropboxusercontent.com/u/142951/cakedc-users-custom-table.gz – steinkel

+0

Danke, es funktioniert, ist es möglich, nicht zu speichern Passwort in der Benutzer-Tabelle, Speichern des Benutzernamens und des Passworts in einer anderen Tabelle und andere Details verbleiben in der Benutzer-Tabelle mit Ausnahme des Passwort-Feldes –

Verwandte Themen