Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Django Configuração de Projeto Padrão (Simples)

Essa configuração simples de projeto django que utilizo para fazer testes e criar aplicações locais.

Espero que ajude !!!

Esse é link do Vídeo Tutorial Link

Configurações Iniciais

Ambiente Virtual Linux/Windows
  • Ambiente Virtual Linux/Windows

    Lembrando… Precisa ter Python instalado no seu ambiente.

    Criar o ambiente virtual Linux/Windows

    ## Windows
    python -m venv .venv
    source .venv/Scripts/activate # Ativar ambiente
    
    ## Linux 
    ## Caso não tenha virtualenv. "pip install virtualenv"
    virtualenv .venv
    source .venv/bin/activate # Ativar ambiente

    Instalar os seguintes pacotes.

    pip install django
    pip install pillow

    Para criar o arquivo requirements.txt

    pip freeze > requirements.txt
Criando o Projeto
  • Criando o Projeto

    Criando o projeto

    “core” é nome do seu projeto e quando colocamos um “.” depois do nome do projeto significa que é para criar os arquivos na raiz da pasta. Assim não cria subpasta do projeto.

    django-admin startproject core .

    Testar a aplicação

    python manage.py runserver
Configurar Settings e Arquivos Static
  • Configurar Settings e Arquivos Static

    Vamos configurar nossos arquivos static

    import os 
    
    # base_dir config
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    TEMPLATE_DIR = os.path.join(BASE_DIR,'templates')
    STATIC_DIR=os.path.join(BASE_DIR,'static')
    
    # Database
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3',
            'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 
        }
    }
    
    STATIC_ROOT = os.path.join(BASE_DIR,'static')
    STATIC_URL = '/static/' 
    
    MEDIA_ROOT=os.path.join(BASE_DIR,'media')
    MEDIA_URL = '/media/'
    
    # Internationalization
    # Se quiser deixar em PT BR
    LANGUAGE_CODE = 'pt-br'
    TIME_ZONE = 'America/Sao_Paulo'
    USE_I18N = True
    USE_L10N = True 
    USE_TZ = True

    myapp/urls.py

    from django.contrib import admin
    from django.conf import settings
    from django.conf.urls.static import static
    from django.urls import path
    
    urlpatterns = [
        path('admin/', admin.site.urls),
    ]
    
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) # Adicionar Isto
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) # Adicionar Isto
Criando Aplicativo
  • Criando Aplicativo

    Vamos criar nosso aplicativo no Django.

    Para criar a aplicação no Django rode comando abaixo. “myapp” é nome do seu App.

    python manage.py startapp myapp

    Agora precisamos registrar nossa aplicação no INSTALLED_APPS localizado em settings.py.

Template base e Bootstrap Configuração
  • Template base e Bootstrap Configuração

    Bootstrap configuração

    Doc: https://getbootstrap.com/docs/5.2/getting-started/introduction/

    Com Base na documentação para utilizar os recursos Boostrap basta adicionar as tags de CSS e JS. No HTML da Pagina Base.

    <!-- CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
    
    <!-- JS -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>

    Template Base

    1 - criar um arquivo base base.html onde vamos renderizar nosso conteúdo.

    {% load static %}
    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<meta http-equiv="X-UA-Compatible" content="IE=edge">
    	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    	<title>{% block title %}{% endblock %}</title>
    
    	<!-- CSS -->
    	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
    
    </head>
    <body>  
    	
    	{% block content %}
    	
    	{% endblock %} 
     
    	<!-- JS-->
    	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
    </body>
    </html>
Cria uma View
  • Cria uma View

    index1.html

    {% extends 'base.html' %}
    {% block title %}Pagina Inicial{% endblock %}
    {% block content %}
    	<h1>Pagina Inicial</h1>
    {% endblock %}

    myapp/views.py

    from django.shortcuts import render
    
    # Create your views here.
    def mysite(request):
        return render(request, 'index1.html')

    criar arquivo myapp/urls.py

    from django.urls import path 
    from myapp import views
    
    urlpatterns = [
        path('', views.mysite, name='mysite'), 
    ]
    

    urls.py do projeto. core/urls.py

    from django.contrib import admin
    from django.urls import path, include # adicionar include
    from django.conf import settings
    from django.conf.urls.static import static 
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('myapp.urls')), # url do app
    ]
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) # Adicionar Isto
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) # Adicionar Isto

    Rodar o projeto para ver como está.

    python manage.py makemigrations && python manage.py migrate
    python manage.py runserver

    .gitignore

    /tmp
    passenger_wsgi.py 
    .venv
    db.sqlite3
    /static_media
    static_media
    /static_files
    static_files
    /media
    mydatabase
    file_name.sql
    __pycache__ 
    __pycache__/

About

Essa é configuração Default Simples que utilizo nos meus projetos testes uso local. E configuração mais completa que utilizo nos projeto no 2 branch.

Topics

Resources

Stars

19 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages