Skip to content

Commit d2145da

Browse files
author
erichideki
committed
Fix posts of Eric Hideki
1 parent 0fb7f18 commit d2145da

4 files changed

Lines changed: 1269 additions & 1 deletion

content/desenvolvendo-com-bottle-parte-1.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Github: erichideki
88
Site: http://ericstk.wordpress.com
99
Twitter: erichideki
1010
Linkedin: erichideki
11-
Category: comunnity
11+
Category: begginers, bottle, tutorial
1212

1313

1414

File renamed without changes.
Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
Title: Desenvolvendo com Bottle - Parte 1
2+
Slug: desenvolvendo-com-bottle-parte-1
3+
Date: 2014-12-03 15:05
4+
Tags: bottle,python
5+
Author: Eric Hideki
6+
Email: eric8197@gmail.com
7+
Github: erichideki
8+
Site: http://ericstk.wordpress.com
9+
Twitter: erichideki
10+
Linkedin: erichideki
11+
Category: comunnity
12+
13+
14+
15+
Desenvolvendo com Bottle - Parte 1
16+
-----------
17+
18+
### Texto originalmente escrito em:
19+
20+
[https://realpython.com/blog/python/developing-with-bottle-part-1/]
21+
22+
Eu amo [bottle]. Ele é simples, rápido e poderoso micro-framework Python, perfeito para pequenas aplicações web e rápida prototipação. É também perfeita ferramenta de ensino para aqueles que estão começando agora com desenvolvimento web.
23+
24+
Vamos dar um rápido exemplo.
25+
26+
> Este tutorial espera que você esteja em um ambiente baseado em Unix - e.g, Mac OSX, sistemas Linux, ou no Linux rodando uma Virtual Machine no Windows. Eu irei estar usando Sublime Text 2 como meu editor de texto.
27+
28+
#Começando
29+
30+
Primeiramente, vamos criar um diretório para trabalhar:
31+
32+
```
33+
$ mkdir bottle
34+
$ cd bottle
35+
```
36+
37+
Depois, você precisa ter pip, virtualenv, e git instalados.
38+
39+
[virtualenv] é uma ferramenta Python que torna fácil gerenciar módulos Python necessários para um particular projeto. Ele também mantém os módulos isolados para que não entre em conflito com outros projetos.[pip], entretanto, é um gerenciador de pacotes usado para gerenciar a instalaçao de bibliotecas e módulos.
40+
41+
Para ajudar com a instalação do pip(e todas as dependências) em um ambiente Unix, siga as instruções nesse [Gist]. Se você está no Windows, por favor veja esse [vídeo] para sua ajuda.
42+
43+
Uma vez com o pip instalado, execute os seguintes comandos para instalar o virtualenv:
44+
45+
```
46+
$ pip install virtualenv
47+
```
48+
49+
Agora nós podemos facilmente configurar nosso ambiente local executando:
50+
51+
```
52+
$ virtualenv --no-site-packages testenv
53+
$ source testenv/bin/activate
54+
```
55+
56+
Instalar o Bottle:
57+
58+
```
59+
$ pip install bottle
60+
```
61+
62+
Agora criamos o arquivo *requirementx.txt*, que permitirá você instalar os exatos módulos e dependências iguais no caso de você querer usar esse aplicativo em qualquer outro local. Clique [aqui] para aprender mais.
63+
64+
```
65+
pip freeze > requirements.txt
66+
```
67+
68+
Finalmente, vamos colocar nossa aplicação em um controle de versão usando Git. Para mais informações sobre o Git, por favor veja esse [site], que inclui instruções de instalação.
69+
70+
```
71+
$ git init
72+
$ git add .
73+
$ git commit -m "initial commit"
74+
```
75+
76+
##Escrevendo sua aplicação
77+
78+
Agora estamos preparados para escrever nossa aplicação com Bottle. Crie seu arquivo de aplicação, *app.py*, que irá carregar todo o nosso primeiro aplicativo:
79+
80+
```
81+
import os
82+
from bottle import route, run, template
83+
84+
index_html = '''My first web app! By {{ author }}'''
85+
86+
@route('/:anything')
87+
def something(anything=''):
88+
return template(index_html, author=anything)
89+
90+
@route('/')
91+
def index():
92+
return template(index_html, author='your name here')
93+
94+
if __name__ == '__main__':
95+
port = int(os.environ.get('PORT', 8080))
96+
run(host='0.0.0.0', port=port, debug=True)
97+
```
98+
99+
Salve o arquivo.
100+
101+
Agora você pode executar sua aplicação localmente:
102+
103+
```
104+
$ python app.py
105+
```
106+
107+
Você poderá ser capaz de conectar a [http://localhost:8080/abc] e ver sua aplicação rodando!
108+
Mude ```abc``` para seu nome. Dê refresh no navegador.
109+
110+
#O que tá acontecendo?
111+
112+
1. O decorator ```@route``` diz que a aplicação deve interpretar o caminho depois do ```/``` como a variável ```qualquer```.
113+
2. Isto é passado para a função sendo como um argumento```(def alguma_coisa(qualquer='')```
114+
3. Nós então passamos isto para a função do template sendo um argumento(```author=qualquer```)
115+
4. O template então renderiza a variável author com ```{{ author }}```
116+
117+
#Shell script
118+
119+
Quer começar de forma rápida? Crie um inicializador de aplicação em poucos segundos usando o Shell script.
120+
121+
```
122+
mkdir bottle
123+
cd bottle
124+
pip install virtualenv
125+
virtualenv --no-site-packages testenv
126+
source testenv/bin/activate
127+
pip install bottle
128+
pip freeze > requirements.txt
129+
git init
130+
git add .
131+
git commit -m "initial commit"
132+
133+
cat >app.py <<EOF
134+
import os
135+
from bottle import route, run, template
136+
137+
index_html = '''My first web app! By {{=<% %>=}}{{ author }}<%={{ }}=%>'''
138+
139+
@route('/:anything')
140+
def something(anything=''):
141+
return template(index_html, author=anything)
142+
143+
@route('/')
144+
def index():
145+
return template(index_html, author='your name here')
146+
147+
if __name__ == '__main__':
148+
port = int(os.environ.get('PORT', 8080))
149+
run(host='0.0.0.0', port=port, debug=True)
150+
EOF
151+
152+
chmod a+x app.py
153+
154+
git init
155+
git add .
156+
git commit -m "Updated"
157+
```
158+
159+
Baixe esse script através dessa [Gist-list], e então execute o seguinte comando:
160+
161+
```
162+
$ bash bottle.sh
163+
```
164+
165+
#Próximos passos
166+
167+
A partir desse ponto, é tão fácil adicionando uma nova ```@route```-decorated functions() para criar novas páginas, assim como fizemos com essas duas páginas.
168+
169+
Criar o HTML é simples: Nessa aplicação, nós apenas adicionamos HTML na mesma linha e arquivo.Isto é fácil de modificar(usando, por exemplo, ```open('index.html').read())``` para ler o template de um arquivo.
170+
171+
Referências para a [documentação] do Bottle para mais informações
172+
173+
[https://realpython.com/blog/python/developing-with-bottle-part-1/]:https://realpython.com/blog/python/developing-with-bottle-part-1/
174+
[bottle]:http://bottlepy.org/docs/stable/
175+
[virtualenv]:https://pypi.python.org/pypi/virtualenv
176+
[pip]:https://pypi.python.org/pypi/pip
177+
[Gist]:https://gist.github.com/mjhea0/5692708
178+
[vídeo]:https://www.youtube.com/watch?v=MIHYflJwyLk
179+
[aqui]:https://pip.pypa.io/en/latest/user_guide.html#requirements-files
180+
[site]:http://git-scm.com/book/pt-br/v1/Primeiros-passos-No%C3%A7%C3%B5es-B%C3%A1sicas-de-Git
181+
[http://localhost:8080/abc]:http://localhost:8080/abc
182+
[Gist-list]:https://gist.github.com/mjhea0/5784132
183+
[documentação]:http://bottlepy.org/docs/dev/

0 commit comments

Comments
 (0)