terça-feira, 6 de fevereiro de 2018

Minha 1ª App com Django

Hello World!

Conforme feito, o projeto atual é o mysite.

Um Projeto Django é separado por aplicações ou apps. 
Para criar uma aplicação em um Projeto acesse o diretório de destino mysite (diretório do Projeto, mysite do nível superior). Em seguida, execute o comando:
python manage.py startapp hello

Este comando irá gerar a estrutura básica padrão de uma aplicação, com arquivos e diretórios de um app do Django.
--------------------------------------------------------------------
Estrutura gerada:

hello/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

O arquivo admin.py possui funções administrativas, como registro de models para uso na área de administração do Django.
O arquivo apps.py é destinado a configuração da aplicação.
O arquivo __init__.py indica a app para o Python.
O arquivo models.py armazena dados dos banco de dados.
O arquivo tests.py onde codifica testes automáticos.
O arquivo views.py armazena requisições e lógicas da aplicação.
--------------------------------------------------------------------
Após gerar os arquivos, vamos codificar de forma simplificada a página de Hello World.
Seguem os códigos:

Arquivo settings.py:
...
# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'hello', # adicionando a aplicação ao django
]
...
--------------------------------------------------------------------
Arquivo hello\views.py:
from django.shortcuts import render
# Create your views here.

from django.http import HttpResponse

def foo(request):
  return HttpResponse('Hello World!') # definindo fnc de resposta

--------------------------------------------------------------------
Arquivo urls.py
from django.contrib import admin
from django.urls import path

from hello.views import foo # importando a view de hello\views.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('hello/',foo), # adicionando o novo path ao Django
]
--------------------------------------------------------------------
Após codificar, vamos testar a aplicação. Via prompt do DOS, acesse o diretório do ambiente virtual e ative-o. Esta ativação é para que tanto o Python quanto o Django a serem executados sejam os que estão relacionados a este ambiente virtual. Em seguida, acesse o diretório do projeto (onde está o arquivo manage.py).
Execute o Servidor Web, com o comando:
python manage.py runserver

Se o servidor Web foi executado corretamente, acesse o navegador web e digite o endereço:
http://localhost:8000/hello

Deve aparecer a página com o texto 'Hello World!'
--------------------------------------------------------------------
Obs.: As aplicações podem ficar em qualquer lugar dentro dos paths do Python. Neste exemplo, criamos a aplicação chamada "hello" no mesmo nível do arquivo manage.py. Desta forma a app pode ser importada como um módulo de nível superior dentro do projeto. Se fosse criada dentro de mysite (nível abaixo) seria considerada um submódulo de de mysite.

Obs.:Projetos X Apps do Django: Uma App é uma aplicação que tem determinada função, por exemplo um sistema de cadastro de Clientes. 
Um projeto é um conjunto de configurações e pode conter várias Apps. Uma App pode estar em vários projetos. 

Curiosidade: O termo Foo ou foo são termos genéricos amplamente usados para aludir a qualquer entidade informática cujo nome se ignora ou não se quer expressar. (Wikipedia)
--------------------------------------------------------------------

Nenhum comentário:

Postar um comentário

Tutorial 10 de 10

Codificando uma app simples Continuando a alteração no admin... Personalizando a listagem da página de Administração: Vamos fazer melh...