Benutzerspezifische Werkzeuge
Sie sind hier: Startseite Zope Plone Programmierung Python Code Benutzer, Gruppen, Rollen und Berechtigungen Skript zum importieren von Benutzern in Plone
Tag Cloud
Inhalt in Zahlen
  • Seiten: 195
  • Ordner: 83
  • Links: 42
 

Skript zum importieren von Benutzern in Plone

abgelegt unter: , ,
Gerade beim anlegen vieler Benutzer, bringt ein Skript zum Benutzerimport eine enorme Zeitersparnis.
  1. Erstellt eine Textdatei mit den Benutzerinformation im folgenden Format:
    Benutzername;Passwort;Nachname;Vorname;E-Mail;Gruppe1,Gruppe2,Gruppe3
  2. Ruft das ZMI auf und legt eine Datei (File) mit der ID "userlist.csv" und der eben erstellten Textdatei an.
  3. Als nächstes wird ein "Script (Python)" mit der ID "import_users.py" und folgendem Inhalt angelegt:
    from Products.CMFCore.utils import getToolByName
    regtool = getToolByName(context, 'portal_registration')
    grptool = getToolByName(context, 'portal_groups')

    users = context['userlist.csv'].data.split('\n')

    line_count = 0
    import_count = 0

    for user in users:
    line_count += 1
    user_data = user.split(';')
    if len(user_data) == 5:
    id, passwd, fullname, email, groups = user_data
    groups = groups.split(',')[:-1]
    properties = dict(username = id,
    email = email,
    fullname = fullname
    )
    try:
    regtool.addMember(id, passwd, properties=properties)
    for group_id in groups:
    group_id = group_id.strip()
    if not grptool.getGroupById(group_id):
    grptool.addGroup(group_id)
    group_obj = grptool.getGroupById(group_id)
    group_obj.addMember(id)

    print "Benutzer %s wurde erfolgreich hinzugefügt" % id
    import_count += 1
    except ValueError, e:
    print "Fehler beim hinzufügen von: %s: %s" % (id, e)
    else:
    print "Zeile %d entspricht nicht dem geforderten Format. Zeile hat folgenden Inhalt: %s" % (line_count, user)

    print "Es wurden %d von %d Benutzern importiert!" % (import_count, line_count)

    return printed
  4. Nach dem speichern könnt Ihr dann auf den Test-Tab drücken und die Benutzer aus der Textdatei werden Zeilenweise importiert!
Kommentieren

Sie können einen Kommentar abgeben, indem Sie das untenstehende Formular ausfüllen. Nur Text.

Frage: Wieviel ist eins + zwei (Bitte eine Zahl als Ziffer schreiben)?
Ergebnis: