Univention Bugzilla – Full Text Bug Listing |
Summary: | Automatisches Mapping von ausgewählten Attributen ohne UDM-Handler.open() ermöglichen | ||
---|---|---|---|
Product: | UCS | Reporter: | Alexander Kläser <klaeser> |
Component: | UDM (Generic) | Assignee: | Stefan Gohmann <gohmann> |
Status: | CLOSED FIXED | QA Contact: | Florian Best <best> |
Severity: | normal | ||
Priority: | P4 | CC: | gohmann |
Version: | UCS 3.0 | Keywords: | interim-2 |
Target Milestone: | UCS 3.1 | ||
Hardware: | Other | ||
OS: | Linux | ||
What kind of report is it?: | --- | What type of bug is this?: | --- |
Who will be affected by this bug?: | --- | How will those affected feel about the bug?: | --- |
User Pain: | Enterprise Customer affected?: | ||
School Customer affected?: | ISV affected?: | ||
Waiting Support: | Flags outvoted (downgraded) after PO Review: | ||
Ticket number: | Bug group (optional): | ||
Max CVSS v3 score: |
Description
Alexander Kläser
2011-12-06 18:27:52 CET
(In reply to comment #0) > Derzeit wird bei der Suche nach IP-Adressen zwar eine Spalte "IP-Adresse" > angezeigt, allerdings ist diese leer. Dies liegt wahrscheinlich daran, dass > IP-Adressen ein Multi-Value-Feld ist. > > Potentiell kann das auch in anderen Fällen auftreten, daher könnte die Lösung > ein entsprechender JavaScript-Formatter sein, der Strings und Arrays handhaben > kann. Ein formatter wäre nur ein Teil der Lösung, dass generelle Probleme mit der Anzeige beheben würde. Das eigentliche Problem ist aber, dass die Werte leer sind. Die Filterung funktioniert. { "status": 200, "message": null, "options": { "objectProperty": "ip", "container": "all", "objectPropertyValue": "*101", "objectType": "computers\/computer" }, "result": [ { "$dn$": "cn=slave,cn=dc,cn=computers,dc=ucs,dc=test", "name": "slave", "ip": [ "" ], "$childs$": false, "labelObjectType": "Dom\u00e4nencontroller Slave", "path": "test.ucs:\/computers\/dc", "objectType": "computers\/domaincontroller_slave" } ] } Es wäre sinnvoll, diesen Bug generisch zu lösen. Das Problem ist, dass die IP-Adressen erst nach dem Aufruf von open() aus dem LDAP in das self.info-Dict übertragen werden. Dies macht bei komplizierteren Mappings auch durchaus Sinn. Sinnvoll wäre es daher, wenn einfache und wichtige (=häufig genutzte) Mappings direkt in self.info übertragen werden und nur die komplizierteren in open(). Dies könnte so umgesetzt werden, dass bei mapping.register() ein optionaler Parameter übergeben werden (bspw. directMapping=True), der diese Attribute markiert. Dadurch könnte man sich wahrscheinlich auch den Aufruf von open() an anderen Stellen ersparen. Es werden bereits alle Mappings, die per mapping.register() angegeben werden direkt im init durchgeführt. Die IP Adresse wird nicht per mapping.register übertragen, sondern wurde bislang im open von simpleComputer gemacht. Das habe ich jetzt ins __init__ von simpleComputer verschoben. Damit wird die IP Adresse direkt angezeigt. Andere Attribute die per mapping.register registriert sind, beispielsweise die MAC Adresse oder die Beschreibung werden angezeigt. Pakete bauen, ich prüfe gerade noch ob es Nebenwirkungen gibt oder ob weitere Felder fehlen. Tests soweit erfolgreich. OK, IP-Adresse wird angezeigt. Weitere unwichitge Suchattribute werden an Bug #28803 aus der Suchliste gelöscht. Changelog OK. UCS 3.1-0 has been released: http://forum.univention.de/viewtopic.php?f=54&t=2125 If this error occurs again, please use "Clone This Bug". |