#55. Классы CreateView и UpdateView | Уроки по Django 4
HTML-код
- Опубликовано: 30 сен 2024
- Практический курс по Django: stepik.org/a/1...
Телеграм-канал Django: t.me/django_se...
Инфо-сайт: proproprogs.ru...
Реализация добавления записей (статей) с помощью класса CreateView и изменение записей с помощью класса UpdateView.
55_sitewomen.zip: github.com/sel...
Классы представлений: docs.djangopro...
DeleteView: docs.djangopro...
Столкнулся с одним приколом. При создании поста,если не выставлять возврат на страницу home и выбрать черновик,то вылетит обычная ошибка 404.
В модели Women можно так, например:
def get_absolute_url(self):
if self.is_published:
return reverse('post', kwargs={'post_slug': self.slug})
else:
return reverse('home')
Кто домашку сделал? Я написал по аналогии с UpdateView, удаление срабатывает, но, в отличие от UpdateView, не отображается форма и ее содержимое:
class DeletePage(DeleteView):
model = Women
fields = ['title', 'content', 'photo', 'cat']
template_name = 'women/addpage.html' # указываем шаблон
success_url = reverse_lazy('home')
extra_context = {
'menu': menu,
'title': "Удаление статьи",
}
Не получается у меня. Ты fields зачем написал и еще addpage.htm... я вообще ожидал, что это будет кнопка на детальном отображении!?
Домашка:
class DeletePage(DeleteView):
''' Удаление статьи '''
print('[!] class DeletePage(DeleteView)')
# Привязка к модели
model = Women
# Переменная, котор буду передавать в контексте
context_object_name = 'posts'
# Шаблон удаления
template_name = 'women/delete.html'
# Переадресация после удаления
success_url = reverse_lazy('home')
# Если несуществующий Тэг-404
allow_empty = False
# Удаление
path('delete//', views.DeletePage.as_view(), name='delete_page')
post.html
Удалить статью
delete.html
{% extends 'base.html' %}
{% block content %}
{% csrf_token %}
Внимание! Страница удаления статьи.
Точно удалить статью "{{ posts }}"?
Удалить статью
{% endblock %}
Если кто нибудь знает, подскажите, как сделать, что бы в post.html, был человеческий образ кнопки, как в button параметр передать.
Спасибо. Очень бы хотелось небольшое видео о date views(архив и проч). Когда возникает в них необходимость?
Я поставил 225 й лайк 😎😎😎
Спасибо за труд💪 Смотреть начал с первых твоих видео🤝 Очень грамотно все разъясняешь! Не бросай канал, нужно еще много чего объяснить нам.
Спасибо, Сергей! Здоровья тебе🤝
вот как слаг сделать автоматический в CreateView, что бы его в форме не выводить. ))) Буду искать! Благодарю вас!😄
Спасибо большое вам. Смотрю с удовольствием, вроде все знакомо. Наверное пора начинать свой более менее серьезный пет проект. А не просто TODO-шки и иже с ними как до этого. Иначе дальше развиваться трудно. Огромное спасибо за ваш посыл в одном из видео про сакральность знаний. Каждый раз когда трудно или кажется что ничего не смогу понять и разобраться, я вспоминаю этот ваш тезис и это придает уверенности и стремления продолжать!
поделитесь видео, где говорят про саккральность знаний, нужна мотиваци!)
@@vladislav_petr0v Я, к сожалению, уже не не помню в каком конкретно видео Сергея это было
Вы суперчел! Спасибо!!
Спасибо. Все толково.
Спасибо! Лайк!
Благодарю!
Спасибо
👍
пока не совсем понятно, для чего нужен в CreateView функционал привязки представления напрямую с моделью, в таком случае приходиться дублировать код, который прописывался в форме, профитов если честно не вижу
в таком простом проекте их, в общем то, нет, проявляются в сложных