Skip to content

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.

Notifications You must be signed in to change notification settings

opencodigos/DjangoProjetoConfiguracao

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

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

Watchers

Forks

Releases

No releases published

Packages

No packages published