Django servidor local
Adiciona o IP da maquina local no settings
Exemplo
Exemplo
ALLOWED_HOSTS = ['192.168.2.111', 'localhost', '127.0.0.1']
ALLOWED_HOSTS = ['192.168.2.111'] ip do computador
ALLOWED_HOSTS = ['192.168.2.111'] ip do computador
execute o servidor com python manage.py runserver 0.0.0.0:8000
abra no outro pc com: 192.168.2.111:8000
abra no outro pc com: 192.168.2.111:8000
django-heroku
fonte: https://github.com/Gpzim98/django-heroku#django-heroku
Configuração mínima para hospedar um projeto do Django no Heroku
Tutorial de Logon / Logout do Django (Parte 1)
Neste tutorial aprenderemos como configurar a funcionalidade de login / logout no Django 2.1 com o sistema de autenticação de usuários integrado . Futuros tutoriais cobrem como implementar a inscrição , bem como uma sequência de redefinição de senha . Ao final desses tutoriais, você terá um fluxo de autenticação de usuário completo para seus futuros projetos Django.
Este tutorial pressupõe que você já esteja familiarizado com a configuração de um novo projeto do Django. Se você precisar de ajuda, por favor, consulte o Django for Beginners, que aborda o tópico com mais detalhes.
Note que, se você está procurando informações sobre o uso de um modelo de usuário personalizado do Django ou sobre a adição de uma autenticação social com o django-allauth , também tenho tutoriais separados sobre eles. E quando você estiver pronto para colocar tudo junto, confira meu Mega-tutorial de login do Django, que mostra como combinar um modelo de usuário personalizado com um login social com o Gmail.
Neste tutorial aprenderemos como configurar a funcionalidade de login / logout no Django 2.1 com o sistema de autenticação de usuários integrado . Futuros tutoriais cobrem como implementar a inscrição , bem como uma sequência de redefinição de senha . Ao final desses tutoriais, você terá um fluxo de autenticação de usuário completo para seus futuros projetos Django.
Este tutorial pressupõe que você já esteja familiarizado com a configuração de um novo projeto do Django. Se você precisar de ajuda, por favor, consulte o Django for Beginners, que aborda o tópico com mais detalhes.
Note que, se você está procurando informações sobre o uso de um modelo de usuário personalizado do Django ou sobre a adição de uma autenticação social com o django-allauth , também tenho tutoriais separados sobre eles. E quando você estiver pronto para colocar tudo junto, confira meu Mega-tutorial de login do Django, que mostra como combinar um modelo de usuário personalizado com um login social com o Gmail.
Configuração
Comece criando um novo projeto Django. Este código pode viver em qualquer lugar no seu computador. Em um Mac, a área de trabalho é um local conveniente e é onde colocaremos esse código. Nós podemos fazer toda a configuração normal a partir da linha de comando:
- criar um novo
accounts
diretório para o nosso código na área de trabalho
- instalar o Django com o Pipenv
- iniciar o shell do ambiente virtual
- crie um novo projeto Django chamado
my_project
- crie um novo banco de dados Sqlite com
migrate
- executar o servidor local
Aqui estão os comandos para executar:
$ cd ~/Desktop
$ mkdir accounts && cd accounts
$ pipenv install django==2.1
$ pipenv shell
(accounts) $ django-admin.py startproject my_project .
(accounts) $ python manage.py migrate
(accounts) $ python manage.py runserver
Comece criando um novo projeto Django. Este código pode viver em qualquer lugar no seu computador. Em um Mac, a área de trabalho é um local conveniente e é onde colocaremos esse código. Nós podemos fazer toda a configuração normal a partir da linha de comando:
- criar um novo
accounts
diretório para o nosso código na área de trabalho - instalar o Django com o Pipenv
- iniciar o shell do ambiente virtual
- crie um novo projeto Django chamado
my_project
- crie um novo banco de dados Sqlite com
migrate
- executar o servidor local
Aqui estão os comandos para executar:
$ cd ~/Desktop
$ mkdir accounts && cd accounts
$ pipenv install django==2.1
$ pipenv shell
(accounts) $ django-admin.py startproject my_project .
(accounts) $ python manage.py migrate
(accounts) $ python manage.py runserver
O aplicativo de autenticação do Django
O Django instala automaticamente o auth
aplicativo quando um novo projeto é criado. Olhe settings.py
abaixo INSTALLED_APPS
e você pode ver auth
é um dos vários aplicativos integrados que o Django instalou para nós.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth', # Yoohoo!!!!
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Para usar o auth
aplicativo, precisamos adicioná-lo ao nosso urls.py
arquivo no nível do projeto . Certifique-se de adicionar include
na segunda linha. Eu escolhi incluir o auth
aplicativo, accounts/
mas você pode usar qualquer padrão de URL desejado.
# my_project/urls.py
from django.contrib import admin
from django.urls import path, include # new
urlpatterns = [
path('admin/', admin.site.urls),
path('accounts/', include('django.contrib.auth.urls')), # new
]
O auth
aplicativo que agora incluímos nos fornece várias visualizações de autenticação e URLs para lidar com login, logout e gerenciamento de senhas.
Os URLs fornecidos por auth
são:
accounts/login/ [name='login']
accounts/logout/ [name='logout']
accounts/password_change/ [name='password_change']
accounts/password_change/done/ [name='password_change_done']
accounts/password_reset/ [name='password_reset']
accounts/password_reset/done/ [name='password_reset_done']
accounts/reset/<uidb64>/<token>/ [name='password_reset_confirm']
accounts/reset/done/ [name='password_reset_complete']
Também há exibições de autoria associadas para cada padrão de URL. Isso significa que só precisamos criar um modelo para usar cada um!
O Django instala automaticamente o
auth
aplicativo quando um novo projeto é criado. Olhe settings.py
abaixo INSTALLED_APPS
e você pode ver auth
é um dos vários aplicativos integrados que o Django instalou para nós.INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth', # Yoohoo!!!!
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Para usar o
auth
aplicativo, precisamos adicioná-lo ao nosso urls.py
arquivo no nível do projeto . Certifique-se de adicionar include
na segunda linha. Eu escolhi incluir o auth
aplicativo, accounts/
mas você pode usar qualquer padrão de URL desejado.# my_project/urls.py
from django.contrib import admin
from django.urls import path, include # new
urlpatterns = [
path('admin/', admin.site.urls),
path('accounts/', include('django.contrib.auth.urls')), # new
]
O
auth
aplicativo que agora incluímos nos fornece várias visualizações de autenticação e URLs para lidar com login, logout e gerenciamento de senhas.
Os URLs fornecidos por
auth
são:accounts/login/ [name='login']
accounts/logout/ [name='logout']
accounts/password_change/ [name='password_change']
accounts/password_change/done/ [name='password_change_done']
accounts/password_reset/ [name='password_reset']
accounts/password_reset/done/ [name='password_reset_done']
accounts/reset/<uidb64>/<token>/ [name='password_reset_confirm']
accounts/reset/done/ [name='password_reset_complete']
Também há exibições de autoria associadas para cada padrão de URL. Isso significa que só precisamos criar um modelo para usar cada um!
Página de login
Vamos fazer nossa página de login! O Django, por padrão, irá procurar dentro de uma pasta de modelos chamada registration
por templates de autenticação. O modelo de login é chamado login.html
.
Crie um novo diretório chamado registration
e o login.html
arquivo de requisitos dentro dele. A partir do tipo de linha de comando, Control-c
feche nosso servidor local e insira os seguintes comandos:
(accounts) $ mkdir templates
(accounts) $ mkdir templates/registration
(accounts) $ touch templates/registration/login.html
Em seguida, inclua este código de modelo em nosso login.html
arquivo:
<!-- templates/registration/login.html -->
<h2>Login</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Login</button>
</form>
Este é um formulário padrão do Django usado POST
para enviar dados e tags para questões de segurança, principalmente para evitar um ataque XSS. O conteúdo do formulário é gerado entre as tags de parágrafo, graças a e, em seguida, adicionamos um botão "enviar".{% csrf_token %}
{{ form.as_p }}
Em seguida, atualize o settings.py
arquivo para dizer ao Django para procurar uma templates
pasta no nível do projeto. Atualize a DIRS
configuração da TEMPLATES
seguinte maneira. Esta é uma mudança de uma linha.
# my_project/settings.py
TEMPLATES = [
{
...
'DIRS': [os.path.join(BASE_DIR, 'templates')],
...
},
]
Nossa funcionalidade de login agora funciona, mas para torná-lo melhor, devemos especificar onde redirecionar o usuário em um login bem-sucedido. Em outras palavras, uma vez que um usuário tenha logado, onde ele deveria ser enviado no site? Usamos a LOGIN_REDIRECT_URL
configuração para especificar essa rota. Na parte inferior do settings.py
arquivo, adicione o seguinte para redirecionar o usuário para a página inicial.
# my_project/settings.py
LOGIN_REDIRECT_URL = '/'
Na verdade, estamos prontos neste momento!
Se você iniciar o servidor do Django novamente python manage.py runserver
e navegar para a nossa página de login em http://127.0.0.1:8000/accounts/login/,você verá o seguinte.
Vamos fazer nossa página de login! O Django, por padrão, irá procurar dentro de uma pasta de modelos chamada
registration
por templates de autenticação. O modelo de login é chamado login.html
.
Crie um novo diretório chamado
registration
e o login.html
arquivo de requisitos dentro dele. A partir do tipo de linha de comando, Control-c
feche nosso servidor local e insira os seguintes comandos:(accounts) $ mkdir templates
(accounts) $ mkdir templates/registration
(accounts) $ touch templates/registration/login.html
Em seguida, inclua este código de modelo em nosso
login.html
arquivo:<!-- templates/registration/login.html -->
<h2>Login</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Login</button>
</form>
Este é um formulário padrão do Django usado
POST
para enviar dados e tags para questões de segurança, principalmente para evitar um ataque XSS. O conteúdo do formulário é gerado entre as tags de parágrafo, graças a e, em seguida, adicionamos um botão "enviar".{% csrf_token %}
{{ form.as_p }}
Em seguida, atualize o
settings.py
arquivo para dizer ao Django para procurar uma templates
pasta no nível do projeto. Atualize a DIRS
configuração da TEMPLATES
seguinte maneira. Esta é uma mudança de uma linha.# my_project/settings.py
TEMPLATES = [
{
...
'DIRS': [os.path.join(BASE_DIR, 'templates')],
...
},
]
Nossa funcionalidade de login agora funciona, mas para torná-lo melhor, devemos especificar onde redirecionar o usuário em um login bem-sucedido. Em outras palavras, uma vez que um usuário tenha logado, onde ele deveria ser enviado no site? Usamos a
LOGIN_REDIRECT_URL
configuração para especificar essa rota. Na parte inferior do settings.py
arquivo, adicione o seguinte para redirecionar o usuário para a página inicial.# my_project/settings.py
LOGIN_REDIRECT_URL = '/'
Na verdade, estamos prontos neste momento!
Se você iniciar o servidor do Django novamente
python manage.py runserver
e navegar para a nossa página de login em http://127.0.0.1:8000/accounts/login/,você verá o seguinte.Crie usuários
Mas há uma peça que falta: ainda não criamos nenhum usuário . Vamos rapidamente fazer isso criando uma conta de superusuário na linha de comando. Saia do servidor com Control+c
e execute o comando python manage.py createsuperuser
. Responda aos prompts e observe que sua senha não aparecerá na tela durante a digitação por motivos de segurança.
(accounts) $ python manage.py createsuperuser
Username (leave blank to use 'wsv'):
Email address: will@wsvincent.com
Password:
Password (again):
Superuser created successfully.
Agora, gire o servidor novamente python manage.py runserver
e atualize a página em http://127.0.0.1:8000/accounts/login/ . Digite as informações de login para o usuário recém-criado.
Sabemos que nosso login funcionou porque fomos redirecionados para a página inicial, mas ainda não o criamos, por isso, vemos a página de erro não encontrada . Vamos consertar isso!
Mas há uma peça que falta: ainda não criamos nenhum usuário . Vamos rapidamente fazer isso criando uma conta de superusuário na linha de comando. Saia do servidor com
Control+c
e execute o comando python manage.py createsuperuser
. Responda aos prompts e observe que sua senha não aparecerá na tela durante a digitação por motivos de segurança.(accounts) $ python manage.py createsuperuser
Username (leave blank to use 'wsv'):
Email address: will@wsvincent.com
Password:
Password (again):
Superuser created successfully.
Agora, gire o servidor novamente
python manage.py runserver
e atualize a página em http://127.0.0.1:8000/accounts/login/ . Digite as informações de login para o usuário recém-criado.
Sabemos que nosso login funcionou porque fomos redirecionados para a página inicial, mas ainda não o criamos, por isso, vemos a página de erro não encontrada . Vamos consertar isso!
Crie uma homepage
Queremos uma página inicial simples que mostre uma mensagem para usuários desconectados e outra para usuários logados.
Primeiro sair do servidor local com Control-c
e, em seguida, criar novos base.html
e home.html
arquivos. Note que estes estão localizados dentro da templates
pasta, mas não dentro de templates/registration/
onde a autenticação do Django parece por padrão para os modelos de autenticação do usuário.
(accounts) $ touch templates/base.html
(accounts) $ touch templates/home.html
Adicione o seguinte código para cada um:
<!-- templates/base.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{% block title %}Django Auth Tutorial{% endblock %}</title>
</head>
<body>
<main>
{% block content %}
{% endblock %}
</main>
</body>
</html>
<!-- templates/home.html -->
{% extends 'base.html' %}
{% block title %}Home{% endblock %}
{% block content %}
{% if user.is_authenticated %}
Hi {{ user.username }}!
{% else %}
<p>You are not logged in</p>
<a href="{% url 'login' %}">login</a>
{% endif %}
{% endblock %}
Enquanto estamos nisso, podemos atualizar login.html
também para estender nosso novo base.html
arquivo:
<!-- templates/registration/login.html -->
{% extends 'base.html' %}
{% block title %}Login{% endblock %}
{% block content %}
<h2>Login</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Login</button>
</form>
{% endblock %}
Agora atualize nosso urls.py
arquivo para exibirmos a página inicial. Na terceira linha, importe TemplateView
e adicione um urlpattern para ele.
# my_project/urls.py
from django.contrib import admin
from django.urls import path, include
from django.views.generic.base import TemplateView # new
urlpatterns = [
path('admin/', admin.site.urls),
path('accounts/', include('django.contrib.auth.urls')),
path('', TemplateView.as_view(template_name='home.html'), name='home'), # new
]
E terminamos Se você iniciar o servidor do Django novamente python manage.py runserver
e navegar até a página inicial em http://127.0.0.1:8000/, verá o seguinte:
Funcionou! Mas como fazemos o logout? A única opção atualmente é entrar no painel de administração em http://127.0.0.1:8000/admin/ e clicar no link "Logout" no canto superior direito.
Isso nos desconectará conforme visto pela página de redirecionamento:
Se você acessar a página inicial novamente em http://127.0.0.1:8000/ e atualizar a página, poderemos ver que estamos desconectados.
Queremos uma página inicial simples que mostre uma mensagem para usuários desconectados e outra para usuários logados.
Primeiro sair do servidor local com
Control-c
e, em seguida, criar novos base.html
e home.html
arquivos. Note que estes estão localizados dentro da templates
pasta, mas não dentro de templates/registration/
onde a autenticação do Django parece por padrão para os modelos de autenticação do usuário.(accounts) $ touch templates/base.html
(accounts) $ touch templates/home.html
Adicione o seguinte código para cada um:
<!-- templates/base.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{% block title %}Django Auth Tutorial{% endblock %}</title>
</head>
<body>
<main>
{% block content %}
{% endblock %}
</main>
</body>
</html>
<!-- templates/home.html -->
{% extends 'base.html' %}
{% block title %}Home{% endblock %}
{% block content %}
{% if user.is_authenticated %}
Hi {{ user.username }}!
{% else %}
<p>You are not logged in</p>
<a href="{% url 'login' %}">login</a>
{% endif %}
{% endblock %}
Enquanto estamos nisso, podemos atualizar
login.html
também para estender nosso novo base.html
arquivo:<!-- templates/registration/login.html -->
{% extends 'base.html' %}
{% block title %}Login{% endblock %}
{% block content %}
<h2>Login</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Login</button>
</form>
{% endblock %}
Agora atualize nosso
urls.py
arquivo para exibirmos a página inicial. Na terceira linha, importe TemplateView
e adicione um urlpattern para ele.# my_project/urls.py
from django.contrib import admin
from django.urls import path, include
from django.views.generic.base import TemplateView # new
urlpatterns = [
path('admin/', admin.site.urls),
path('accounts/', include('django.contrib.auth.urls')),
path('', TemplateView.as_view(template_name='home.html'), name='home'), # new
]
E terminamos Se você iniciar o servidor do Django novamente
python manage.py runserver
e navegar até a página inicial em http://127.0.0.1:8000/, verá o seguinte:
Funcionou! Mas como fazemos o logout? A única opção atualmente é entrar no painel de administração em http://127.0.0.1:8000/admin/ e clicar no link "Logout" no canto superior direito.
Isso nos desconectará conforme visto pela página de redirecionamento:
Se você acessar a página inicial novamente em http://127.0.0.1:8000/ e atualizar a página, poderemos ver que estamos desconectados.
Link de logout
Vamos adicionar um link de logout à nossa página para que os usuários possam alternar facilmente entre os dois estados. Felizmente, o auth
aplicativo Django já nos fornece um URL interno e visualiza isso. E se você pensar sobre isso, não será necessário exibir nada no logout, portanto, não há necessidade de um modelo. Tudo o que realmente fazemos depois de uma solicitação de “logout” bem-sucedida é redirecionar para outra página.
Então, primeiro vamos adicionar um link ao logout
url embutido em nosso base.html
arquivo:
<!-- templates/home.html-->
{% extends 'base.html' %}
{% block title %}Home{% endblock %}
{% block content %}
{% if user.is_authenticated %}
Hi {{ user.username }}!
<p><a href="{% url 'logout' %}">logout</a></p>
{% else %}
<p>You are not logged in</p>
<a href="{% url 'login' %}">login</a>
{% endif %}
{% endblock %}
Em seguida, atualize settings.py
com o nosso link de redirecionamento que é chamado LOGOUT_REDIRECT_URL
. Adicione-o ao lado do nosso redirecionamento de login para que a parte inferior do settings.py
arquivo tenha a seguinte aparência:
# my_project/settings.py
LOGIN_REDIRECT_URL = '/'
LOGOUT_REDIRECT_URL = '/'
Na verdade, agora que temos uma visão da página inicial, devemos usar isso em vez de nossa abordagem atual codificada. Qual é o nome do URL da nossa página inicial? É home
, que nós nomeamos em nosso my_project/urls.py
arquivo:
# my_project/urls.py
...
path('', TemplateView.as_view(template_name='home.html'), name='home'),
...
Assim, podemos substituir '/'
com home
a parte inferior do settings.py
arquivo:
# my_project/settings.py
LOGIN_REDIRECT_URL = 'home'
LOGOUT_REDIRECT_URL = 'home'
Agora, se você revisitar a página inicial e o login, você será redirecionado para a nova hompage que possui um link de "logout" para usuários logados.
Clicando nele, você volta para a página inicial com um link de "login".
Vamos adicionar um link de logout à nossa página para que os usuários possam alternar facilmente entre os dois estados. Felizmente, o
auth
aplicativo Django já nos fornece um URL interno e visualiza isso. E se você pensar sobre isso, não será necessário exibir nada no logout, portanto, não há necessidade de um modelo. Tudo o que realmente fazemos depois de uma solicitação de “logout” bem-sucedida é redirecionar para outra página.
Então, primeiro vamos adicionar um link ao
logout
url embutido em nosso base.html
arquivo:<!-- templates/home.html-->
{% extends 'base.html' %}
{% block title %}Home{% endblock %}
{% block content %}
{% if user.is_authenticated %}
Hi {{ user.username }}!
<p><a href="{% url 'logout' %}">logout</a></p>
{% else %}
<p>You are not logged in</p>
<a href="{% url 'login' %}">login</a>
{% endif %}
{% endblock %}
Em seguida, atualize
settings.py
com o nosso link de redirecionamento que é chamado LOGOUT_REDIRECT_URL
. Adicione-o ao lado do nosso redirecionamento de login para que a parte inferior do settings.py
arquivo tenha a seguinte aparência:# my_project/settings.py
LOGIN_REDIRECT_URL = '/'
LOGOUT_REDIRECT_URL = '/'
Na verdade, agora que temos uma visão da página inicial, devemos usar isso em vez de nossa abordagem atual codificada. Qual é o nome do URL da nossa página inicial? É
home
, que nós nomeamos em nosso my_project/urls.py
arquivo:# my_project/urls.py
...
path('', TemplateView.as_view(template_name='home.html'), name='home'),
...
Assim, podemos substituir
'/'
com home
a parte inferior do settings.py
arquivo:# my_project/settings.py
LOGIN_REDIRECT_URL = 'home'
LOGOUT_REDIRECT_URL = 'home'
Agora, se você revisitar a página inicial e o login, você será redirecionado para a nova hompage que possui um link de "logout" para usuários logados.
Clicando nele, você volta para a página inicial com um link de "login".
Conclusão
Com muito pouco código, temos um sistema robusto de login e autenticação de logout. Provavelmente parece um pouco mágica, já que o auth
aplicativo fez muito do trabalho pesado para nós. Uma das boas coisas do Django é que, embora ele forneça muitas funcionalidades prontas para uso, ele foi projetado para ser personalizável também.
Na próxima postagem, Tutorial de inscrição do Django , aprenderemos como adicionar uma página de inscrição para registrar novos usuários.
Com muito pouco código, temos um sistema robusto de login e autenticação de logout. Provavelmente parece um pouco mágica, já que o
auth
aplicativo fez muito do trabalho pesado para nós. Uma das boas coisas do Django é que, embora ele forneça muitas funcionalidades prontas para uso, ele foi projetado para ser personalizável também.
Na próxima postagem, Tutorial de inscrição do Django , aprenderemos como adicionar uma página de inscrição para registrar novos usuários.
Crie o diretório do projeto
- mkdir directory_name
- cd directory_name
Crie e ative seu virtuanenv
- virtualenv -p python3 .vEnv
- . .vEnv / bin / activate
Instalando o django
- pip instalar django
Crie o projeto django
- django-admin startproject myproject
Criando o repositório Git
- git init
- Crie um arquivo chamado
.gitignore
com o seguinte conteúdo:
# See the name for you IDE
.idea
# If you are using sqlite3
*.sqlite3
# Name of your virtuan env
.vEnv
*pyc
- git add.
- git commit -m 'Primeiro commit'
Escondendo a configuração da instância
- pip instalar python-desacoplar
- crie um arquivo .env no caminho raiz e insira as seguintes variáveis
- SECRET_KEY = Seu $ eCretKeyHere (Obter esta chave secreta do settings.py)
- DEBUG = True
Settings.py
- da configuração de importação do desacoplamento
- SECRET_KEY = config ('SECRET_KEY')
- DEBUG = config ('DEBUG', padrão = False, cast = bool)
Configurando a Base Daba
- pip instalar dj-database-url
Settings.py
- de dj_database_url import parse as dburl
default_dburl = 'sqlite: ///' + os.path.join (BASE_DIR, 'db.sqlite3')
BANCO DE DADOS = {'default': config ('DATABASE_URL', default = default_dburl, cast = dburl),}
Arquivos estáticos
pip instalar dj-static
wsgi
- de dj_static import Cling
- aplicativo = Cling (get_wsgi_application ())
Settings.py
- STATIC_ROOT = os.path.join (BASE_DIR, 'staticfiles')
Crie um requerimento-dev.txt
congelamento pip> requirements-dev.txt
Crie um arquivo file requirements.txt e inclua uma referência ao arquivo previows e adicione mais dois requisitos
- -r requisitos-dev.txt
- gunicorn
- psycopg2
Crie um arquivo Procfile e adicione o seguinte código
- web: gunicorn website.wsgi --log-file -
Crie um arquivo runtime.txt e adicione o seguinte núcleo
- python-3.6.0
Criando o aplicativo no Heroku
Você deve instalar ferramentas de CLI heroku em seu computador anteriormente (consulte http://bit.ly/2jCgJYW )
- aplicativos heroku: criar nome do aplicativo Lembre-se de pegar o endereço do aplicativo neste ponto
Configurando os hosts permitidos
- inclua seu endereço nas diretivas ALLOWED_HOSTS em settings.py - Apenas o domínio, certifique-se de pegar o protocolo e barras da string
Heroku instalar o plugin de configuração
- plugins heroku: instale o heroku-config
Enviando configurações de .env para Heroku (Você tem que estar dentro do seguinte, onde os arquivos .env são)
- plugins heroku: instale o heroku-config
- configuração heroku: push -a
Para mostrar as configurações do heroku
- configuração heroku
Publicando o aplicativo
- git add.
- git commit -m 'Configurando o aplicativo'
- git push heroku mestre - força
Criando a base de dados
- heroku executar python3 manage.py migrar
Criando o usuário admin do Django
- heroku executar python3 manage.py createsuperuser
EXTRAS
Você pode precisar desativar o collectstatic
- configuração heroku: defina DISABLE_COLLECTSTATIC = 1
Alterando uma configuração específica
- configuração heroku: set DEBUG = True
Aplicativo feito em kivy python:
cor para o imc: Cornflower blue
Calcula o IMC
Link para doawload: aqui
Criar exe python com cx_freeze:
https://regilanj.wordpress.com/2017/06/07/py-to-exe-in-python-3-6-1/?preview=true
App jogo de Matemática feito em kivy:
Vídeo:
https://www.youtube.com/watch?v=6Qfiv11pUAg
Download:
https://github.com/mancusoa74/jMath
Link:
https://drive.google.com/drive/folders/0B4a5Co0QLzxRNlA5aC1iOXdLc0k?usp=sharing
Instalação do python e kivy no Windows com Anaconda.
1º passo:
Baixe o Anaconda e instale normalmente.
2º passo:
Nesta aba selecione se deseja que seja permitido usar para todos os usuários ou somente você, no meu caso optei somente para mim. Primeira opção conforme imagem abaixo.
3º passo:
De um next por padrão ele instalara o anaconda no disco C, não recomendo alterar esta pasta.
4º passo:
Adicione o anaconda ao path do sistema:
Finalize toda a instalação.
4º passo:
Abra o prompt de comando do windows e veja se esta tudo certo, digite python -- version.
Devera aparecer a versão instalada conforme a imagem acima.
5º passo:
Criação do ambiente virtual:
No terminal digite conda create --name k36 (este é o nome que criei para meu ambiente virtual) python=3.6(versão do python desejada.
Selecione a opção y (sim).
Para verificar os ambientes instalados digite conda env list:
Para ativar seu ambiente digite activate k36 e para desativar digite deactivate k36.
6º passo:
Agora basta instalar a biblioteca do kivy em nosso ambiente.
Ative o ambiente que deseja instalar o kivy, neste exemplo vou ativar o k36 (activate k36).
https://kivy.org/docs/installation/installation-windows.html
Atualize o pip e setup
pip install --upgrade pip wheel setuptools
Instale os 3 pacotes necessário:
pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glewInstale o próximo pacote de vídeo e áudio gstreamer:
pip install kivy.deps.gstreamer
Agora vamos instalar o kivy:
pip install kivyPara testar a instalação basta digitar no prompt python e logo após import kivy.
Pronto, instalação finalizada.
Instalação do pyinstallAtt: Jorge Luiz Angioleti
Nenhum comentário:
Postar um comentário