Typesafe config: Wie man über Konfigurationselemente iteriert

7

In meiner Play-Anwendung habe ich eine Konfiguration wie folgt:

%Vor%

Muss ich über alle social Einträge iterieren, um url und logo für jeden Eintrag zu erhalten?

%Vor%

Natürlich funktioniert item.getString im Snippet hier oben nicht ... es zeigt nur, was ich erreichen möchte.

Das endgültige Ziel wäre, eine weitere soziale URL hinzufügen zu können, ohne die Seitenvorlage ändern zu müssen.

    
j3d 14.12.2013, 13:04
quelle

4 Antworten

10

Wenn Sie die Konfiguration zu:

ändern %Vor%

Du könntest es so machen:

%Vor%     
Paweł Kozikowski 14.12.2013, 17:46
quelle
4

Für die Nachwelt gibt es eine andere Möglichkeit, wie Sie über eine verschachtelte Konfiguration zu iterieren. Ich ziehe dieses Format dem Array vor und würde meine Konfiguration lieber sauberer machen als den Code.

%Vor%

Ich bin mir sicher, dass das OP dies in eine Twirl-Vorlage umwandeln könnte. Das ist ungefähr so ​​sauber, wie ich es bekommen kann.

    
Cole Stanfield 10.04.2014 04:01
quelle
4

Falls Sie Java verwenden, könnte dies eine Lösung sein:

%Vor%     
Haiyuan Zhang 17.10.2014 18:20
quelle
0

socialConfig.root.map funktioniert nicht.

Hier ist meine Lösung -

%Vor%

Wobei extractSubConfig eine Methode ist, die eine ERROR / Config (eine Scalaz-Disjunktion) erzeugt und traverseErrorOr eine Methode zum Durchlaufen einer Liste ist und entweder alle Elemente verarbeitet oder fehlschlägt und eine fehlerhafte Disjunktion zurückgibt, wenn an irgendeinem Punkt ein Fehler auftritt. Diese Methode kann ohne Scalaz durchgeführt werden, indem einfach eine Antwort geschrieben wird, um den Leuten zu helfen, wenn sie wollen.

    
Prashanth Acharya 13.12.2017 20:35
quelle