El árbol de navegación, es una forma de representar las opciones que el usuario tiene a la hora de navegar por el site/aplicación. Para este caso he optado por un diagrama de árbol hecho con la herramienta XMind
El nodo raiz representa la página de inicio, en la que se dará la opción de iniciar una sesión o registrarse en la aplicación. Por este motivo los hijos del nodo raiz son register y <username>, donde register representa el formulario de registro y <username> la página de inicio del usuario.
En la aplicación sólo los usuarios logados tendrán permisos para crear, editar y modificar las listas y sus elementos y por ello todas las urls caen por debajo del nodo <username>.
Una vez estamos en la página <username> a.k.a página de inicio del usuario logado, este podrá:
- editar su datos referentes a la cuenta registrada en la aplicación, para ello deberá acceder a la ruta /<username>/edit.
- configurar la compartición de listas con otros usuarios a través de la ruta /<username>/share.
- ver sus listas, borrarlas, crear nuevas y buscar sobre ellas a través de las rutas /<username>/lists/add , /<username>/lists , /<username>/lists/<list name>/edit y /<username>/lists/<list name>/delete
- ver los elementos de una lista, editarlos, eliminarlos y añadir nuevos a través de las rutas /<username>/lists/<list name> , /<username>/lists/<list name>/<item>/edit , /<username>/lists/<list name>/<item>/delete y /<username>/lists/<list name>/add
Hay que tener en cuenta que este esquema no se recoge los posibles saltos en la navegación, como por ejemplo el ir desde la ruta /<username>/lists/<list name> a la página de inicio. Estas relaciones se darán en la aplicación pero añadirlas al esquema provocaría un poco de ruido, por este motivo solo pongo la navegación más relevante de cara al usuario y a las acciones que este puede realizar en la aplicación.
Todavía no he cerrado el prototipo del listado de listas (valga la redundancia), pero está la posibilidad que desde esa vista sea desde la que se creen las entradas. Si es así, el usuario no vería que cambia de url en el momento de creación de una lista, por lo que este esquema estaría mal, ¿no?. Pués desde mi punto de vista no lo estaría ya que Django necesita de una url para realizar una acción de forma que para poder añadir una lista habría que hacer la petición a través de la url definida en el esquema, pero sin que esta muestre un nuevo contenido HTML.


0 comments ↓
There are no comments yet...Kick things off by filling out the form below.
Leave a Comment