-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
REST API Schema-Intent Konzept in opengever.core umsetzen #5973
Milestone
Comments
Schätzung des verbleibenden Aufwands (siehe Tasks im verlinkten Draft-PR): 3 Story Points |
Frontend: 5 SP
|
Das ganze müsste ja nun auch im Frontend verwendet werden. Sonst haben wir keine Aussage ob das Konzept wie gewünscht funktioniert. Ich verschiebe den Issue deshalb wieder ins Todo. |
Dieser Issue wurde umgesetzt und wird nun im UI in allen Formularen verwendet. Funktioniert wie gewünscht. |
2 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Harvest:
Projekt - Umsetzung Neues User Interface GEVER 2019/2020
-Entwicklung
Der Vorschlag in #5968 (comment) soll in Zukunft in
plone.restapi
umgesetzt werden.Wir werden dazu in
plone.restapi
den Vorschlag machen, dies wie beschrieben zu implementieren. Da dies aber eine relativ fundamentale Anpassung ist, ist damit zu rechnen dass noch einiger Diskussionsbedarf besteht, und die Umsetzung nicht in nächster Zeit erfolgen kann.Daher wollen wir die Umsetzung dieses Konzeptes vorerst in
opengever.core
prototypen. Es soll dazu das Konzept wie beschrieben umgesetzt werden, aber ohne Änderungen inplone.restapi
vorzunehmen, sondern indem die nötigen Services in GEVER entsprechend überschrieben und angepasst werden.Folgende Anpassungen sollen gemacht werden:
Weitere Aufruf-Syntax für
@sources
,@querysources
und@vocabularies
einführenFür diese drei Endpoints soll eine neue Aufruf-Syntax eingeführt werden, welche die Add-Semantik wiederspiegelt:
(Siehe Vorschlag im referenzierten Ticket).
Die Endpoints müssen also überschrieben und so umgebaut werden, dass sie entweder 1 oder 2 Pfad-Parameter akzeptieren.
field_name
. Dies impliziert edit intentportal_type
undfield_name
, in dieser Reihenfolge. Dies impliziert add intentAbhängig von der Aufruf-Syntax soll das Schema, von dem die Source, Querysource oder Vocabulary geholt wird, unterschiedlich bestimmt werden:
portal_type
descontext
ausgelesen werdenportal_type
Pfad-Parameter verwendet werdenÜber den
portal_type
wird dann die FTI geholt, und darüber das Schema, etc.. (muss voraussichtlich nicht angepasst werden).Neuen endpoint
@schema
einführenSoll möglichst viel von der Implementierung von
@types/(portal_type)
ausplone.restapi
erbenSoll aber nur das serialisieren von Schemas anbieten, nicht das auflisten von existierenden / addable types
Im Gegensatz zu
@types/(portal_type)
soll es aber zwei Formen des Aufrufs geben:Intent: edit
Intent: add
(container)/@sources/(portal_type)/(field_name)
verlinkt werden(context)/@sources/(field_name)
verlinkt werden(analog für
@vocabularies
und@querysources
)Voraussichtlich werden folgende Arbeiten nötig sein:
@sources
,@querysources
und@vocabularies
endpoints überschreibenIPloneSiteRoot
verfügbar sind (dann aber nur mit add Intent verwendbar)@schema
endpoint registrieren (fürIPloneSiteRoot
undIContentish
)plone.restapi
für den@schema
endpoint wiederverwenden, aber anpassen. Dazu werden vermutlich einige Funktionen ausplone.restapi.types.utils
kopiert, gewrapped oder monkey-patched werden müssen.The text was updated successfully, but these errors were encountered: