From 92a74a39c9df76092d707513792fa428b4c7157c Mon Sep 17 00:00:00 2001 From: Anna Warzecha Date: Fri, 19 Jun 2015 11:02:50 +0200 Subject: [PATCH] Fix code blocks --- pt/django_forms/README.md | 95 +++++++++--------- pt/extend_your_application/README.md | 95 +++++++++--------- pt/template_extending/README.md | 138 +++++++++++++-------------- 3 files changed, 165 insertions(+), 163 deletions(-) diff --git a/pt/django_forms/README.md b/pt/django_forms/README.md index 3a24c1cdb59..e45bd5f81d4 100755 --- a/pt/django_forms/README.md +++ b/pt/django_forms/README.md @@ -16,16 +16,17 @@ Precisamos criar um arquivo com este nome dentro da pasta `blog`. Ok, vamos abri-lo e escrever nele o seguinte: - ``` python - from django import forms - - from .models import Post - - class PostForm(forms.ModelForm): - - class Meta: - model = Post - fields = ('title', 'text',)``` +```python +from django import forms + +from .models import Post + +class PostForm(forms.ModelForm): + + class Meta: + model = Post + fields = ('title', 'text',) +``` Primeiro precisamos importar o módulo de formulários do Django (`from django import forms`) e, obviamente, nosso modelo `Post` (`from .models import Post`). @@ -45,7 +46,7 @@ Então, mais uma vez, nós iremos criar: um link para a página, uma URL, uma vi É hora de abrir `blog/templates/blog/base.html`. Nós iremos adicionar um link em `div` nomeado `page-header`: ```html - + ``` Note que nós queremos chamar nossa nova visão `post_new`. @@ -53,30 +54,30 @@ Note que nós queremos chamar nossa nova visão `post_new`. Depois de adicionar a linha, seu html deve se parecer com isso: ```html - {% load staticfiles %} - - - Django Girls blog - - - - - - - -
-
-
- {% block content %} - {% endblock %} -
+{% load staticfiles %} + + + Django Girls blog + + + + + + + +
+
+
+ {% block content %} + {% endblock %}
- - +
+ + ``` Depois de salvar e recarregar a página `http://127.0.0.1:8000` você verá, obviamente, um erro familiar `NoReverseMatch` certo? @@ -86,20 +87,20 @@ Depois de salvar e recarregar a página `http://127.0.0.1:8000` você verá, obv Vamos abrir o arquivo `blog/urls.py` e escrever: ```python - url(r'^post/new/$', views.post_new, name='post_new'), +url(r'^post/new/$', views.post_new, name='post_new'), ``` O código final deve se parecer com isso: ``` python - from django.conf.urls import include, url - from . mport views - - urlpatterns = [ - url(r'^$', views.post_list), - url(r'^post/(?P[0-9]+)/$', views.post_detail), - url(r'^post/new/$', views.post_new, name='post_new'), - ] +from django.conf.urls import include, url +from . mport views + +urlpatterns = [ + url(r'^$', views.post_list), + url(r'^post/(?P[0-9]+)/$', views.post_detail), + url(r'^post/new/$', views.post_new, name='post_new'), +] ``` Após recarregar o site, nós veremos um `AttributeError`, desde que nós não temos a visão `post_new` implementada. Vamos adicioná-la agora. @@ -109,15 +110,15 @@ Após recarregar o site, nós veremos um `AttributeError`, desde que nós não t Hora de abrir o arquivo `blog/views.py` e adicionar as linhas seguintes com o resto das linhas `from`: ``` python - from .forms import PostForm +from .forms import PostForm ``` e nossa *view*: ``` python - def post_new(request): - form = PostForm() - return render(request, 'blog/post_edit.html', {'form': form}) +def post_new(request): + form = PostForm() + return render(request, 'blog/post_edit.html', {'form': form}) ``` Para criar um novo formulario `Post`, nós devemos chamar `PostForm()` e passá-lo para o template. Nós iremos voltar para esta *view*, mas por agora vamos criar rapidamente um template para o formulário. @@ -137,7 +138,7 @@ Precisamos criar um arquivo `post_edit.html` na pasta `blog/templates/blog`. Pra Beleza, então vamos ver como ficou o HTML `post_edit.html`: - ```html +```html {% extends 'blog/base.html' %} {% block content %} diff --git a/pt/extend_your_application/README.md b/pt/extend_your_application/README.md index 7bda0f0e87b..e9f9828e876 100755 --- a/pt/extend_your_application/README.md +++ b/pt/extend_your_application/README.md @@ -12,29 +12,29 @@ Já temos um modelo de `Post`, então não precisamos adicionar nada ao `models. Vamos começar com a adição de um link dentro do arquivo `blog/templates/blog/post_list.html`. Neste momento ele deve se parecer com: - ```html - {% extends 'blog/base.html' %} - - {% block content %} - {% for post in posts %} -
-
- {{ post.published_date }} -
-

{{ post.title }}

-

{{ post.text|linebreaks }}

+```html +{% extends 'blog/base.html' %} + +{% block content %} + {% for post in posts %} +
+
+ {{ post.published_date }}
- {% endfor %} - {% endblock content %} - ``` +

{{ post.title }}

+

{{ post.text|linebreaks }}

+
+ {% endfor %} +{% endblock content %} +``` Queremos ter um link para uma página de detalhe no título do post. Vamos transformar `< h1 >< href = "" >{{ post.title }} < /a >< / h1 >` em um link: - ```html -

{{ post.title }}

- ``` +```html +

{{ post.title }}

+``` -{%raw}Tempo para explicar o misterioso `{% url 'blog.views.post_detail' pk=post.pk %}`. Como você pode suspeitar, a notação de `{% %}` significa que estamos usando as tags de template do Django. Desta vez vamos usar uma que vai criar uma URL para nós!{% endraw %} +{% raw %}Tempo para explicar o misterioso `{% url 'blog.views.post_detail' pk=post.pk %}`. Como você pode suspeitar, a notação de `{% %}` significa que estamos usando as tags de template do Django. Desta vez vamos usar uma que vai criar uma URL para nós!{% endraw %} `blog.views.post_detail` é um caminho para um `post_detail` *Vista* que queremos criar. Preste atenção: `blog` é o nome da sua aplicação (o diretório `blog`), `views` vem do nome do arquivo `views.py` e, a última parte - `post_detail` - é o nome da *view*. @@ -50,15 +50,15 @@ Vamos criar a URL em `urls.py` para a nossa`post_detail` *view*! Queremos criar uma URL para guiar o Django para a *view* chamada `post_detail`, que irá mostrar um post completo do blog. Adicione a linha `url(r'^post/(?P[0-9]+)/$', views.post_detail),` ao arquivo `blog/urls.py`. Deve ficar assim: - ```python - from django.conf.urls import include, url - from . import views - - urlpatterns = [ - url(r'^$', views.post_list), - url(r'^post/(?P[0-9]+)/$', views.post_detail), - ] - ``` +```python +from django.conf.urls import include, url +from . import views + +urlpatterns = [ + url(r'^$', views.post_list), + url(r'^post/(?P[0-9]+)/$', views.post_detail), +] +``` Parece assustador, mas não se preocupe - vamos explicar ele para você: - começa com `^` de novo... "o início" - `post /` significa apenas que após o começo, da URL deve ter a palavra **post** e **/**. Até aqui, tudo bem. - `(?P[0-9]+)` - essa parte é mais complicada. Isso significa que o Django vai levar tudo que você colocar aqui e transferir para uma view como uma variável chamada `pk`. `[0-9]` também nos diz que só pode ser um número, não uma letra (tudo entre 0 e 9). `+` significa que precisa existir um ou mais dígitos. Então algo como `http://127.0.0.1:8000/post//` não é válido, mas `http://127.0.0.1:8000/post/1234567890/` é perfeitamente ok! -`/` - então precisamos de **/** outra vez - `$` - "o fim"! @@ -128,21 +128,22 @@ Ah não! Outro erro! Mas nós já sabemos como lidar com isso, né? Precisamos a Vamos criar um arquivo em `blog/templates/blog` chamado `post_detail.html`. Será algo parecido com isto: - ```html - {% extends 'blog/base.html' %} - - {% block content %} -
- {% if post.published_date %} -
- {{ post.published_date }} -
- {% endif %} -

{{ post.title }}

-

{{ post.text|linebreaks }}

-
- {% endblock %} - ``` + +```html +{% extends 'blog/base.html' %} + +{% block content %} +
+ {% if post.published_date %} +
+ {{ post.published_date }} +
+ {% endif %} +

{{ post.title }}

+

{{ post.text|linebreaks }}

+
+{% endblock %} +``` Mais uma vez estamos estendendo `base.html`. No bloco de `content` queremos exibir o published_date (data de publicação) do post (se houver), título e texto. Mas devemos discutir algumas coisas importantes, certo? @@ -160,11 +161,11 @@ Yay! Funciona! Seria bom ver se seu site ainda estará trabalhando em PythonAnywhere, certo? Vamos tentar fazer deploy novamente. ```bash - $ git status - $ git add -A . - $ git status - $ git commit -m "Added views to create/edit blog post inside the site." - $ git push +$ git status +$ git add -A . +$ git status +$ git commit -m "Added views to create/edit blog post inside the site." +$ git push ``` * Então, em um [console PythonAnywhere Bash][8]: diff --git a/pt/template_extending/README.md b/pt/template_extending/README.md index fefc5268ebb..11554ff4f16 100755 --- a/pt/template_extending/README.md +++ b/pt/template_extending/README.md @@ -19,104 +19,104 @@ Vamos criar um arquivo `base.html` na pasta `blog/templates/blog/`: Abra-o e copie tudo que está no arquivo `post_list.html` para `base.html`, desse jeito: - ```html - {% load staticfiles %} - - - Django Girls blog - - - - - - - - -
-
-
- {% for post in posts %} -
-
- {{ post.published_date }} -
-

{{ post.title }}

-

{{ post.text|linebreaks }}

-
- {% endfor %} -
-
-
- - - ``` - -Então em `base.html`, substitua todo seu `` (tudo entre `` e ``) com isso: - - ```html +```html +{% load staticfiles %} + + + Django Girls blog + + + + + +
- {% block content %} - {% endblock %} + {% for post in posts %} +
+
+ {{ post.published_date }} +
+

{{ post.title }}

+

{{ post.text|linebreaks }}

+
+ {% endfor %}
- ``` + +``` + +Então em `base.html`, substitua todo seu `` (tudo entre `` e ``) com isso: + +```html + + +
+
+
+ {% block content %} + {% endblock %} +
+
+
+ +``` {% raw %}Basicamente nós substituimos tudo entre `{% for post in posts %}{% endfor %}` por:{% endraw %} - ```html - {% block content %} - {% endblock %} - ``` +```html +{% block content %} +{% endblock %} +``` O que isso significa? Você acabou de criar um `block` (bloco), que é uma tag de template que te permite inserir HTML neste bloco em outros templates que estendem `base.html`. Nós vamos te mostrar como fazer isso já já. Salve e abra o arquivo `blog/templates/blog/post_list.html` novamente. Apague exatamente tudo que não estiver dentro da tag body e apague também ``, de forma que o arquivo fique da seguinte maneira: - ```html - {% for post in posts %} -
-
- {{ post.published_date }} -
-

{{ post.title }}

-

{{ post.text|linebreaks }}

+```html +{% for post in posts %} +
+
+ {{ post.published_date }}
- {% endfor %} - ``` +

{{ post.title }}

+

{{ post.text|linebreaks }}

+
+{% endfor %} +``` Agora adicione esta linha ao início do arquivo: ```html - {% extends 'blog/base.html' %} +{% extends 'blog/base.html' %} ``` Isso significa que, agora, nós estamos estendendo o template `base.html` em `post_list.html`. Uma última coisa: colocar tudo (exceto pela linha que acabamos de adicionar) entre `{% block content %}` e `{% endblock content %}`. Como a seguir: - ```html - {% extends 'blog/base.html' %} - - {% block content %} - {% for post in posts %} -
-
- {{ post.published_date }} -
-

{{ post.title }}

-

{{ post.text|linebreaks }}

+```html +{% extends 'blog/base.html' %} + +{% block content %} + {% for post in posts %} +
+
+ {{ post.published_date }}
- {% endfor %} - {% endblock content %} - ``` +

{{ post.title }}

+

{{ post.text|linebreaks }}

+
+ {% endfor %} +{% endblock content %} +``` É isso! Veja se o seu site ainda está funcionando direito :)