ich benötige einen Hash im Plugin Formular. Dieser muss bei Installation generiert werden.
Eigentlich gar nicht so kompliziert. In der Plugin Base Class mittels install(…) Methode den Config Value des Input manipulieren.
Mein Ansatz funktioniert, fühlt sich aber total falsch und fehleranfällig an. Was wenn sich das Interface ändert etc.
Ich würde ja gerne über den Container auf den Service zugreifen, dieser ist aber private und somit nicht erreichbar. Ich kann ihn zwar in einem eigenen Service über die service.xml reinreichen aber ich wüsste nicht, wie ich das in der Plugin Base Class erreichen könnte.
Ich danke dir erstmal für diesen schönen Lösungsansatz, da ich schon am überlegen war, wie ich bei einer Plugin-Installation am besten Default-Werte für meine Config setze
Bei CustomFields ist es genau so ein “gefruckel” also würde mal deine Lösung als legit betrachten
Ich habe auch in einem meiner Plugins einen md5() Hash erstellt und der Code Review von Shopware hat da wohl ein Problem mit… Alternative hier wäre Uuid() zu nutzen
Super Tipp mit der Code Review. Wüsste zwar nicht warum die Funktion nicht gewünscht ist, hatte meine Implementierung aber auch schon auf die Uuid::randomHex() angepasst. Wenn sich die Shopware Entwickler da so viel Mühe machen, dann sollte man das auch nutzen
@Nordisch leg es direkt via Repository an. Der Konstruktor wird nicht als “Public API” angesehn, und kann deshalb je releases abweichen, dann würde dein Code brechen :).