Aula 07 – Configurando o Django com mysql no Ubuntu

Aula 07 – Curso básico de Django

Criando uma primeira aplicação com Django e mysql no Ubuntu

Configurando o Django para trabalhar com o mysql

https://docs.djangoproject.com/pt-br/1.11/intro/tutorial02/

Aplicação Django com mysql

Configurando o Django com mysql

Depois de criar uma app, é preciso registrá-la no arquivo de configuração do projeto, o settings.py:

# Application definition
INSTALLED_APPS = [

      'django.contrib.admin',

       'django.contrib.auth',

       'django.contrib.contenttypes',

       'django.contrib.sessions',

       'django.contrib.messages',

       'django.contrib.staticfiles',

       'polls',

]

INSTALLED_APPS  possui os nomes de todas as aplicações Django ativas para essa instância do Django.

Aplicações podem ser usadas em múltiplos projetos, e você pode empacotá-las e distribuí-las para uso em outros projetos.

As aplicações que já estão lá por padrão, são incluídas como uma conveniência já que são comuns em vários projetos.

Ainda no settings.py vamos mudar o TIME_ZONE e o LANGUAGE_CODE :


# Internationalization
# https://docs.djangoproject.com/en/1.11/topics/i18n/
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True

Para:


# Internationalization
# https://docs.djangoproject.com/en/1.11/topics/i18n/
LANGUAGE_CODE = 'pt-br'
TIME_ZONE = 'America/Sao_Paulo'
USE_I18N = True
USE_L10N = True
USE_TZ = True

 

Continuando no settings.py vamos mudar a configuração do DATABASE:


DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'DB_NAME',
        'USER': 'DB_USER',
        'PASSWORD': 'DB_PASSWORD',
        'HOST': 'localhost',   # Or an IP Address that your DB is hosted on
        'PORT': '3306',
    }
}

Vamos criar o banco de dados da app, para isso vamos entrar no console do mysql digitando:

mysql –u root –p

Dá enter, digita a senha e dá enter de novo.

O prompt muda para o mysql.

Agora vamos criar o banco de dados da app no mysql:

CREATE DATABASE db_mysite;

Algumas dessas aplicações fazem uso de pelo menos uma tabela no banco de dados, por isso, precisamos criar as tabelas no banco de dados antes de utilizá-las. Para isso rode o comando:

python manage.py migrate

Caso dê erro informando que não encontrou mysqlclient, tente o comando:

pip install mysqlclient

Depois execute novamente o:

python manage.py migrate
O comando migrate verifica a configuração em INSTALLED_APPS e cria a(s) tabela(s) do banco de dados necessária(s) de acordo com as configurações do banco de dados no seu arquivo mysite/settings.py e as migrações que venham com a app.

É mostrado uma mensagem para cada migração aplicada.

Obrigado

Até a próxima

2 thoughts on “Aula 07 – Configurando o Django com mysql no Ubuntu

  1. VITOR RAMALHO VILELA

    Boa tarde professor. Encontrei um erro na hr de executar o comando pip install mysqlclient para corrigir o erro no migrate, o erro foi o seguinte:

    Collecting mysqlclient
    Using cached https://files.pythonhosted.org/packages/6f/86/bad31f1c1bb0cc99e88ca2adb7cb5c71f7a6540c1bb001480513de76a931/mysqlclient-1.3.12.tar.gz
    Complete output from command python setup.py egg_info:
    /bin/sh: 1: mysql_config: not found
    Traceback (most recent call last):
    File “”, line 1, in
    File “/tmp/pip-install-ii7f2c7k/mysqlclient/setup.py”, line 17, in
    metadata, options = get_config()
    File “/tmp/pip-install-ii7f2c7k/mysqlclient/setup_posix.py”, line 44, in get_config
    libs = mysql_config(“libs_r”)
    File “/tmp/pip-install-ii7f2c7k/mysqlclient/setup_posix.py”, line 26, in mysql_config
    raise EnvironmentError(“%s not found” % (mysql_config.path,))
    OSError: mysql_config not found

    —————————————-
    Command “python setup.py egg_info” failed with error code 1 in /tmp/pip-install-ii7f2c7k/mysqlclient/

    Aguardo resposta, obrigado!!!

    1. toticavalcanti Post author

      Olá Vitor, tenta instalar o mysql client lib com:
      sudo apt install libmysqlclient-dev

      Depois tenta:
      pipenv install mysqlclient

      ou

      pip install mysqlclient

      Qualquer coisa me fala, abs.
      Toti

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *