-
Notifications
You must be signed in to change notification settings - Fork 12
Instalação na PythonAnywhere
Veremos nesse procedimento como instalar o Chip In Code na PythonAnywhere. Primeiramente é necessário que você crie uma conta acessando o endereço: https://www.pythonanywhere.com/pricing/
Você pode começar utilizando uma conta gratuita.
Uma vez registrado acesse a sua conta e entre na "Dashboard" e acesse a aba "web":
Caso você esteja utilizando uma conta gratuita, será exibido um aviso de que você não poderá ter uma url para a sua aplicação, sendo assim o acesso será feito através da url: [seu-usuário].pythonanywhere.com
Clique em next:
O próximo passo é escolher o tipo de aplicação que a gente quer, nesse caso vamos escolher web2py e clicar em next:
Será solicitado para definirmos a senha de administrador do web2py e o local de instalação. Insira a senha e deixe os outros dados como estão (ou altere se quiser, apenas lembre o caminho) e clique em next:
Aguarde finalizar o procedimento e você receberá as instruções de como acessar sua aplicação.
Vamos agora clonar o chipincode para nossa aplicação, para fazer isso acesse o menu "Consoles" e escolha um console "bash":
Espere carregar o console. Após carregado, vamos navegar até o diretório "applications" do web2py:
~ $ cd web2py/applications
Clone o repositório do Chip In Code:
~/web2py/applications $ git clone git://github.com/codeupstudio/chipincode.git
Após clonar a aplicação, retroceda um nível e edite o arquivo routes.example.py:
~/web2py/applications $ cd ..
~/web2py/ $ nano routes.example.py
O que você precisa fazer é basicamente alterar o conteúdo da linha 7
de:
default_application = 'init'
para:
default_application = 'chipincode'
Isso fará com que, ao acessar a url da nossa aplicação, ela abra diretamente o Chipincode. Como você pode ter várias aplicações instaladas no web2py, é necessário que se defina qual vai ser a aplicação que abrirá como padrão, caso estejam todas sob a mesma url.
Salve o arquivo (ctrl+o) com o nome de routes.py, removendo a extensão .example, digite "Y" para confirmar e feche o editor (ctrl+x). Feche o console digitando "exit" e pressionando [enter].
Volte agora ao painel "web" e clique na opção [Reload web app], espere finalizar o processo e acesse a url da sua aplicação.
Como estamos rodando o sistema pela primeira vez, será exibida a tela de cadastro do usuário administrativo:
Insira o dados solicitados e clique em instalar. Você será direcionado para a tela de login, insira dos dados de acesso e faça o login:
Feito o login você será direcionado para o painel administrativo, onde deverá efetuar as configurações para o funcionamento do sistema o que tiver em vermelho é obrigatório configurar antes de utilizar o site, sem essas informações você receberá vários erros do sistema.
##Ué? Não tem banco de dados? Tem sim. Por padrão o Chip In Code utiliza o sqlite como base de dados, como a maioria dos servidores já o disponibiliza você não precisa se preocupar com a instalação do mesmo. O sqlite é um ótimo banco de dados para usar em pequenas e médias aplicações web, portanto se o seu site não vai ter mais de 100.000 requisições diárias, alta concorrência e nem vai lidar com terabytes de dados, você pode continuar utilizando o sqlite sem problemas, mas se desejar você poderá utilizar qualquer um dos bancos de dados suportados pelo web2py.
O web2py suporta diversos bancos de dados sem necessidade de alteração na aplicação. Nós desenvolvemos o sistema utilizando o sqlite e o MySQL mas nada impede que você utilize um dos outros bancos de dados suportados, o procedimento é basicamente o mesmo, mas cada banco deve ter suas peculiaridades em relação à instalação e configuração. Optamos pelo MySQL por ser o mais simples de operar: http://web2py.com/books/default/chapter/29/06#Connection-strings.
Acesse a aba "MySQL" do seu painel de controle, defina uma senha e clique no botão [Set MySQL Password]
Ele automaticamente irá criar uma base de dados chamada "default", vamos usar essa mesmo, ou se preferir, crie outra no campo existente logo abaixo dos dados de conexão.
Antes de prosseguir, desconecte do Painel administrativo do Chip In Code e feche a janela do sistema.
Vamos agora então configurar o acesso à base de dados no web2py. Podemos fazer isso, aqui no PythonAnywhere, de três formas:
- Abrindo um console bash e editando o arquivo através do console
- Acessando a aba "Files" do nosso painel e editando o arquivo através da interface web
- Acessando a interface administrativa do web2py
Vamos optar pela 3ª opção, pois assim você já fica conhecendo o ambiente administrativo do web2py.
O acesso à interface administrativa do web2py também precisa ser feito por https, então acesse sua aplicação da seguinte maneira:
**https://**seu-usuario.pythonanywhere.com/admin
Se for solicitada a senha de administrador, é a que você definiu na instalação da aplicação.
Na página administrativa temos listadas, além da nossa aplicação, as aplicações que vêm por padrão no web2py. Clique no botão Editar da sua aplicação.
Aqui iremos editar o arquivo db.py, que contém a nossa configuração de conexão. Caso seja o seu primeiro contato com o web2py, para conhecer melhor essa estrutura da aplicação sugiro visitar o site do web2py e ler o livro online (ou baixar se desejar).
Prosseguindo, clique no botão editar ao lado do arquivo db.py.
A configuração padrão deve estar assim:
O que devemos fazer aqui é comentar a linha 14 e descomentar a linha 15, na linha 15 inserimos os dados de acesso da nossa base de dados, conforme configuramos anteriormente. Deve ficar assim (altere para seus dados):
Clique em salvar o arquivo
Pode ser que ocorra um erro durante o salvamento do arquivo devido à sua conexão, mas basta clicar em salvar novamente até o arquivo ser salvo.
Pode ser também que você receba um alerta de versionamento quando salvar, após um erro de comunicação, mas pode ignorar esse aviso e clicar no botão Retornar e logo após, salvar o arquivo.
Após salvar desconecte da administração e abra a sua aplicação.
Poderemos agora instalar a aplicação utilizando uma base de dados MySQL
##[Voltar]