You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ru/deploy/README.md
+9-8
Original file line number
Diff line number
Diff line change
@@ -93,7 +93,7 @@ $ git commit -m "My Django Girls app, first commit"
93
93
94
94
Зайди на [GitHub.com][2] и создай новую бесплатную учётную запись (если это уже сделано во время подготовки к воркшопу — здорово!). Убедись, что запомнила свой пароль (добавь его в свой менеджер паролей, если им пользуешься).
95
95
96
-
Затем создай новый репозиторий и назови его "my-first-blog". Не выбирай опцию "initialise with a README", не создавай файл .gitignore (мы сделаем это локально сами) и оставь лицензию None.
96
+
Затем создай новый репозиторий и назови его "my-first-blog". Не выбирай опцию "initialise with a README", не создавай файл .gitignore (мы уже сделали это сами) и оставь лицензию None.
97
97
98
98
![][3]
99
99
@@ -149,7 +149,7 @@ Branch master set up to track remote branch master from origin.
149
149
150
150
## Настройка сайта на PythonAnywhere
151
151
152
-
Вернись на [главную страницу PythonAnywhere](https://www.pythonanywhere.com/), кликнув логотип. Затем запусти Bash-консоль. Нажав на кнопку bash ты запускаешь командную строку, которая находится на серверах PythonAnywhere. Эта командная строка аналогична тому, что есть на твоём собственном компьютере.
152
+
Вернись на [главную страницу PythonAnywhere](https://www.pythonanywhere.com/), кликнув логотип. Затем запусти Bash-консоль. Нажав на кнопку bash ты запускаешь командную строку, которая находится на серверах PythonAnywhere. Эта командная строка аналогична той, что есть на твоём собственном компьютере.
153
153
154
154
<imgsrc="images/pythonanywhere_bash_console.png"alt="Раздел «New Console» (новая консоль) в веб-интерфейсе PythonAnywhere с кнопкой «bash»" />
Когда ты это запустишь, в консоли будет печататься лог установки. Он начнётся с чего-то вроде `Collecting pythonanywhere`, а последней будет строчка `Successfully installed (...) pythonanywhere- (...)`.
166
166
167
-
Теперь запустим эту вспомогательную утилиту, которую ты только что установила. Она настроит твоё приложение, скачав его код с GitHub. Напечатай следующее в консоли PythonAnywhere (не забудь использовать свой ник на GitHub вместо `<your-github-username>`, URL в консольной команде должен совпадать с URL, используемый в команде clone):
167
+
Теперь запустим эту вспомогательную утилиту, которую ты только что установила. Она настроит твоё приложение, скачав его код с GitHub. Напечатай следующее в консоли PythonAnywhere (не забудь использовать свой ник на GitHub вместо `<your-github-username>`, URL в консольной команде должен совпадать с URL, используемым в команде clone):
Все эти шаги автоматизированы на PythonAnywhere, но они совершенно такие же, какие надо было бы совершить с любым другим хостинговым сервисом.
184
184
185
-
Главное, на что нужно обратить внимание сейчас, — это то, что твоя база данных на PythonAnywhere никак не связана с базой данных на твоём компьютере. Поэтому там будут разные посты и разные аккаунты администраторов. Как следствие, для базы на PythonAnywhere необходимо создать аккаунт администратора так же, как ты это делала у себя локально с помощью команды `createsuperuser`. На PythonAnywhere заранее активировано виртуальное окружение, так что всё, что тебе нужно сделать — это запустить в консоли PythonAnhywhere команду:
185
+
Главное, на что нужно обратить внимание сейчас, — это то, что твоя база данных на PythonAnywhere никак не связана с базой данных на твоём компьютере. Поэтому там будут разные посты и разные аккаунты администраторов. Как следствие, для базы на PythonAnywhere необходимо создать аккаунт администратора так же, как ты это делала у себя локально с помощью команды `createsuperuser`. На PythonAnywhere заранее активировано виртуальное окружение, так что всё, что тебе нужно сделать — это запустить в консоли PythonAnywhere команду:
Ты также можешь заглянуть на страницу «Files» и посмотреть, что лежит на сервере, используя встроенный в PythonAnywhere файловый менеджер. (Со страницы «Console» ты можешь попасть на другие страницы PythonAnywhere используя кнопку меню в правом верхнем углу. Находясь на какой-либо странице, ты можешь найти ссылки на другие вверху.)
205
+
Ты также можешь заглянуть на страницу «Files» и посмотреть, что лежит на сервере, используя встроенный в PythonAnywhere файловый менеджер. (Со страницы «Console» ты можешь попасть на другие страницы PythonAnywhere, используя кнопку меню в правом верхнем углу. Находясь на какой-либо странице, ты можешь найти ссылки на другие вверху.)
206
206
207
207
## Ты в сети!
208
208
209
-
Ура, твой сайт теперь доступен всем в интернете! Ты можешь найти ссылку на него на странице «Web» на PythonAnywhere. Этой ссылкой можно делится с кем хочешь :)
209
+
Ура, твой сайт теперь доступен всем в интернете! Ты можешь найти ссылку на него на странице «Web» на PythonAnywhere. Этой ссылкой можно делиться с кем хочешь :)
210
210
211
211
> **Примечание** Это туториал для начинающих, поэтому публикуя сайт, мы использовали несколько хаков, которые не очень хороши с точки зрения безопасности. Если ты захочешь сделать что-то на основе этого проекта или начать новый, прочитай [Django deployment checklist](https://docs.djangoproject.com/en/2.0/howto/deployment/checklist/) для советов по безопасности на твоём сайте.
212
212
213
213
## Советы по отладке
214
214
215
215
Если ты столкнулась с ошибкой, запуская скрипт `pa_autoconfigure_django.py`, вот несколько частых причин:
216
216
217
-
-Забыть создать PythonAnywhere API токен
217
+
-Ты забыла создать PythonAnywhere API токен
218
218
- Ошибка в GitHub URL
219
-
- Если ты видишь сообщение *"Could not find your settings.py"* (невозможно найти settings.py), это может быть вызвано тем, что ты не добавила все файлы в Git или не загрузила их на GitHub. Перечитай Git-секцию выше.
219
+
- Если ты видишь сообщение *"Could not find your settings.py"* (невозможно найти settings.py), это может быть вызвано тем, что ты не добавила все файлы в Git или не загрузила их на GitHub. Перечитай Git-секцию выше
220
+
- Если ты до этого уже регистрировала аккаунт на PythonAnywhere и наткнулась на ошибку collectstatic, вполне вероятно, что у тебя устаревшая версия SQLite (например, 3.8.2). В этом случае зарегистрируй новый аккаунт и попробуй ещё раз ввести команды, упомянутые в разделе __Настройка блога на PythonAnywhere__.
220
221
221
222
Если ты столкнулась с ошибкой при попытке открыть свой сайт, первое место, где нужно искать отладочную информацию — твой **error log**. Ты найдёшь ссылку на него на странице ["Web"](https://www.pythonanywhere.com/web_app_setup/) на PythonAnywhere. Глянь, есть ли там какие-либо сообщения об ошибках; самые новые находятся внизу.
Copy file name to clipboardExpand all lines: ru/html/README.md
+17-17
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ HTML (от англ. "HyperText Markup Language") — язык гипертек
16
16
17
17
Создание шаблона означает создание файла шаблона. Всё есть файл, верно? Ты уже наверняка заметила это.
18
18
19
-
Шаблоны сохраняются в директории `blog/templates/blog`. Для начала создай директорию `templates` внутри папки blog. Затем создай другую директорию `blog` внутри папки templates:
19
+
Шаблоны сохраняются в директории `blog/templates/blog`. Для начала создай директорию `templates` внутри директории blog. Затем создай другую директорию `blog` внутри директории templates:
20
20
21
21
```
22
22
blog
@@ -28,7 +28,7 @@ blog
28
28
29
29
Теперь создай файл `post_list.html` (для начала оставь его пустым) внутри директории `blog/templates/blog`.
30
30
31
-
Посмотри как выглядит твой веб-сайт после этого: http://127.0.0.1:8000/
31
+
Посмотри, как выглядит твой веб-сайт после этого: http://127.0.0.1:8000/
32
32
33
33
> Если тебя всё ещё встречает ошибка `TemplateDoesNotExists`, попробуй перезапустить сервер. Перейди в командную строку, останови веб-сервер нажатием Ctrl+C (Ctrl и С одновременно) и запусти его снова командой `python manage.py runserver`.
34
34
@@ -103,18 +103,18 @@ blog
103
103
104
104
Сейчас ты можешь немного повеселиться и попробовать настроить шаблон по своему вкусу! Вот несколько полезных тегов:
105
105
106
-
-`<h1>Заголовок</h1>` — главный заголовок страницы;
107
-
-`<h2>Подзаголовок</h2>` — для заголовков второго уровня;
108
-
-`<h3>Заголовок третьего уровня</h3>` … и так далее, вплоть до `<h6>`;
109
-
-`<p>A paragraph of text</p>`
110
-
-`<em>текст</em>`подчёркивает твой текст;
111
-
-`<strong>текст</strong>` — жирный шрифт;
112
-
-`<br />` — переход на следующую строку (внутрь br тега нельзя ничего поместить);
113
-
-`<a href="https://djangogirls.org">link</a>` создаёт ссылку;
106
+
-`<h1>Заголовок</h1>` — главный заголовок страницы
107
+
-`<h2>Подзаголовок</h2>` — для заголовков второго уровня
108
+
-`<h3>Заголовок третьего уровня</h3>` … и так далее, вплоть до `<h6>`
109
+
-`<p>Параграф</p>`
110
+
-`<em>текст</em>`— курсивный шрифт
111
+
-`<strong>текст</strong>` — жирный шрифт
112
+
-`<br>` — переход на следующую строку (внутрь br нельзя ничего поместить, также для него нет закрывающего тега)
113
+
-`<a href="https://djangogirls.org">link</a>` создаёт ссылку
114
114
-`<ul><li>первый элемент</li><li>второй элемент</li></ul>` создаёт список, такой же как этот!
115
-
-`<div></div>` определяет раздел страницы.
115
+
-`<div></div>` определяет раздел страницы
116
116
117
-
Вот пример готового шаблона, скопруй его содержимое в файл `blog/templates/blog/post_list.html`:
117
+
Вот пример готового шаблона, скопируй его содержимое в файл `blog/templates/blog/post_list.html`:
- Первый элемент `div` содержит название блока, которое также является ссылкой.
147
+
- Первый элемент `div` содержит название нашего блога, которое также является ссылкой.
148
148
- Два других `div` элемента содержат текст записи и дату публикации: `h2` тег с заголовком записи, который также является ссылкой, и два `p` (параграфа) с текстом, один для даты, а другой — для самого текста записи.
149
149
150
-
Это даст нам следующий эффект:
150
+
Это даёт нам следующий результат:
151
151
152
152
![Рисунок 11.4][4]
153
153
@@ -177,9 +177,9 @@ $ git status
177
177
$ git add --all .
178
178
```
179
179
180
-
> **Примечание**: `-all` («всё») означает, что `git` также обратит внимание на удалённые файлы (по умолчанию он отслеживает новые/изменённые файлы). Также помни (из третьей главы), что `.` означает текущую директорию.
180
+
> **Примечание**: `--all` («всё») означает, что `git` также обратит внимание на удалённые файлы (по умолчанию он отслеживает новые/изменённые файлы). Также помни (из третьей главы), что `.` означает текущую директорию.
181
181
182
-
Прежде чем мы загрузим файлы, давай проверим, что именно `git` будет загружать (все файлы, который`git` готов отправить на сервер, отмечаются шрифтом зелёного цвета):
182
+
Прежде чем мы загрузим файлы, давай проверим, что именно `git` будет загружать (все файлы, которые`git` готов отправить на сервер, отмечаются шрифтом зелёного цвета):
183
183
184
184
{% filename %}command-line{% endfilename %}
185
185
```
@@ -217,7 +217,7 @@ $ git pull
217
217
[...]
218
218
```
219
219
220
-
Можешь обратить внимание, как твой код будет загружаться на сервер. Если хочешь проверить успешность процедуры — открой вкладку **Файлы** и просмотри свой код на PythonAnywhere.
220
+
Можешь понаблюдать, как твой код будет загружаться на сервер. Если хочешь проверить успешность процедуры — открой вкладку **Файлы** и просмотри свой код на PythonAnywhere.
221
221
222
222
* Наконец, переключись на вкладку [Web][6] и нажми кнопку **Reload**.
0 commit comments