manage.get.gov/docs/architecture/diagrams/request.dot
2022-08-18 09:38:06 -05:00

41 lines
No EOL
2.1 KiB
Text

digraph sequenceDiagram {
# Install graphviz and run `fdp -Tpng request.dot -o request_diagram.png`
subgraph cluster_1 {
label="Request and Response";
browserHead [ label="{Browser|user makes request}" pos="0.1,4.75!" shape="record" ];
browserPoint0 [ pos="0.1,4!" shape="point" width="0" ]
browserPoint5 [ pos="0.1,0.75!" shape="point" width="0" ]
browserFoot [ label="Browser" pos="0,0!" shape="record" ];
viewHead [ label="{Django Views|business logic applied}" pos="2.5,4.75!" shape="record" ];
viewPoint0 [ pos="2.5,4!" shape="point" width="0" ]
viewPoint1 [ pos="2.5,3.75!" shape="point" width="0" ]
viewPoint2 [ pos="2.5,3.5!" shape="point" width="0" ]
viewPoint3 [ pos="2.5,1.25!" shape="point" width="0" ]
viewPoint4 [ pos="2.5,1!" shape="point" width="0" ]
viewPoint5 [ pos="2.5,0.75!" shape="point" width="0" ]
viewFoot [ label="Django view" pos="2.5,0!" shape="record" ];
databaseHead [ label="{Django ORM|database consulted}" pos="5,4.75!" shape="record" ];
databasePoint1 [ pos="5,3.75!" shape="point" width="0" ]
databasePoint2 [ pos="5,3.5!" shape="point" width="0" ]
databaseFoot [ label="Django ORM" pos="5,2.5!" shape="record" ];
templateHead [ label="{Django Templates|html response prepared}" pos="5,2.25!" shape="record" ];
templatePoint3 [ pos="5,1.25!" shape="point" width="0" ]
templatePoint4 [ pos="5,1!" shape="point" width="0" ]
templateFoot [ label="Django Templates" pos="5,0!" shape="record" ];
browserHead -> browserPoint0 -> browserFoot [ dir="none" style="dashed" ]
viewHead -> viewPoint0 -> viewFoot [ dir="none" style="dashed" ]
databaseHead -> databasePoint1 -> databaseFoot [ dir="none" style="dashed" ]
templateHead -> templatePoint3 -> templateFoot [ dir="none" style="dashed" ]
browserPoint0 -> viewPoint0 [ style="solid" ]
viewPoint1 -> databasePoint1 [ style="solid" ]
databasePoint2 -> viewPoint2 [ style="solid" ]
viewPoint3 -> templatePoint3 [ style="solid" ]
templatePoint4 -> viewPoint4 [ style="solid" ]
viewPoint5 -> browserPoint5 [ style="solid" ]
}
}