Я знаю кучу Django, HTML и CSS, но я почему-то не удосужился сделать что-нибудь в JavaScript (только сделал немного jQuery).
Я хочу использовать это на простом веб-сайте в настоящее время для нажатых кнопок, внешний вид и соответствующая база данных которых изменяются без перезагрузки страницы. Мне нужен простой пример использования Django и, возможно, некоторого jQuery, чтобы начать его изучение.
Давайте просто воспользуемся кнопкой «Избранное» или «Нравится», известной, например, из Twitter, например.
Кнопка должна
- Позвольте пользователю
- любимый пост
- сохранить выбор (т.е. сохранить его в соответствующей базе данных MySQL)
- Изменить текст и внешний вид кнопки без загрузки новой страницы
Как бы я поступил об этом?
Вот стандартный код для его запуска:
Джанго
### models.py
from django.db import models
from django.contrib.auth.models import User
class Post(models.Model):
likes = ManyToManyField(User, null=True, blank=True, related_name="likes")
### views.py
def post(request, post_id):
if request.method != 'POST':
render(request, 'mytemplate.html',
{'post': get_object_or_404(Post, pk=post_id)})
else:
# ...?
HTML-шаблон
<a class="favorite" href="#" title="Like this post">Like?<a>