# Web Views Frappe tem dois ambientes de usuário principais, o Desk e o Web. Desk é um ambiente UI controlado com uma rica aplicação AJAX e a web usa template HTML tradicional que serve para consumo público. Web Views também podem ser gerados para criar views mais controladas para os usuários que pode fazer o login mas ainda não têm acesso à Desk. Em Frappe, Web Views são geridas por modelos e eles geralmente estão na pasta `templates`. Existem 2 tipos principais de templates. 1. Pages: Estes são Jinja Templates, onde existe uma única view para uma única rota web, por exemplo, `/blog`. 2. Generators: Estes são templates em que cada instância de um DocType tem uma rota web separada `/blog/a-blog`, `blog/b-blog` etc. 3. Lists and Views: Estas são listas e views padrões com a rota `[doctype]/[name]` e são processadas com base na permissão. ### Standard Web Views > Esta funcionalidade ainda esta em desenvolvimento. Vamos dar uma olhada na standard Web Views: Se você estiver logado como usuário de teste, vá para `/article` e você deverá ver a lista de artigos: web list Clique em um artigo e você vai ver uma Web View padrão web view Agora, se você quiser fazer uma List View melhor para o artigo, crie um arquivo chamado `row_template.html` na pasta `library_management/templates/includes/list/`. Aqui está um exemplo de arquivo: {% raw %}

{{ doc.article_name }}

{{ doc.author }}

{{ (doc.description[:200] + "...") if doc.description|len > 200 else doc.description }}

Publisher: {{ doc.publisher }}

{% endraw %} Aqui, você vai ter todas as propriedades do artigo no objeto `doc`. A List View atualizada se parece com isso! new web list #### Home Page Frappe também tem um fluxo de trabalho de inscrição built-in que também inclui inscrições de terceiros via Google, Facebook e GitHub. Quando um usuário se inscreve na web, ele não tem acesso à interface Desk por padrão. > Para permitir o acesso do usuário ao Desk, abra as configurações pelo Setup > User e defina o usuário como "System User" Agora, para os não usuários do sistema, podemos definir uma home page para quando eles fizerem login via `hooks.py` com baseado na Role. Para quando os membros da biblioteca entrarem, eles devem ser redirecionado para a página `article`, para abrir o arquivo `library_management/hooks.py` adicione: role_home_page = { "Library Member": "article" } {next}