or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Комментарии на сайте
модель комментариев
Сделаем так, чтобы зарегистрированные пользователи могли оставлять комментарии беспрепятственно, а гости должны были дополнительно ввести CAPTCHA. Так мы хоть как-то обезопасим сайт от атаки служб рассылки спама.
Установим библиотеку Django Simple Captcha:
pipenv install django-simple-captcha
Добавим в список зарегистрированных в проекте приложение captcha— программное
ядро этой библиотеки:
И объявим в списке маршрутов уровня проекта (модуль urls.py пакета конфигурации)
маршрут, указывающий на это приложение:
Код, объявляющий модель comment
Реализация комментариев
Объявим связанные С моделью Comment формы UserCommentForm И GuestCommentForm, в которые будут заносить комментарии, соответственно, зарегистрированные пользователи, выполнившие вход, и гости.
Теперь необходимо существенно обновить код контроллера-функции detail(), реализовав в нем вывод комментариев и добавление нового комментария.
В шаблоне main\detail.html отыщем тег шаблонизатора block content … endblock и вставим перед закрывающим тегом код, выводящий комментарии: