170 похожих чатов

Всем привет!Почему не создаётся запись в таблицу?Вот код create_trailer.html: <div

class="create_trailer">
<form class="create_trailer_form" method="post">
{% csrf_token %}
{{ form.name_trailer }}
{{ form.preview_trailer }}
{{ form.trailer }}
{{ form.author }}

<input id="user_submit" type="submit" value="Создать статью">
</form>
</div>
Вот код views.py:
def create_trailer(request):
form = TrailerForm(request.POST)

if form.is_valid():
name_trailer = form.cleaned_data['name_trailer']
preview_trailer = form.cleaned_data['preview_trailer']
trailer = form.cleaned_data['trailer']
author = form.cleaned_data['author']
form.save()
print(name_trailer, preview_trailer, trailer)

add_trailer = Trailer(name_trailer=name_trailer, preview_trailer=preview_trailer, trailer=trailer, author=author)
add_trailer.save()
else:
form = TrailerForm()
return render(request, 'polls/create_trailer.html', {'form': form})
Вот код models.py:
class Trailer(models.Model):
name_trailer = models.CharField("Название трейлера", max_length=200)
pub_date = models.DateTimeField('Дата публикации трейлера', default=timezone.now)
preview_trailer = models.ImageField("Превью трейлера", upload_to='photo', default=None)
trailer = models.FileField("Трейлер", upload_to='video')
author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, default="anonim")
Вот код forms.py:
class TrailerForm(ModelForm):
class Meta:
model = Trailer
fields = ['name_trailer', 'preview_trailer', 'trailer', 'author']

46 ответов

49 просмотров

во первых код в gist во вторых почему у тебя две логики создания записи ?

https://pastebin.com/iz2Gtkn2 https://pastebin.com/LAXjyc78 https://pastebin.com/ZXJLJdqC https://pastebin.com/f3cFGpqB

и что форма валидна ?

зачем ты выкладываешь код по нескольким ссылкам? ты правда думаешь так кому-то удобно смотреть?

А что с ней не так?

используй gist там можно в рамках одной ссылки разместить несколько файлов

name_trailer = form.cleaned_data['name_trailer'] preview_trailer = form.cleaned_data['preview_trailer'] trailer = form.cleaned_data['trailer'] author = form.cleaned_data['author'] вот это вообще зачем?

Зачем во второй ссылке в коде строки 5, 6, 7, 8?

Они не нужны?

Удали

Не пиши если не понимаешь зачем это нужно писать и нужно ли

{{ form.as_p }} вот так не пробовал делать? в целом у тебя очень много лишнего кода, а лишний код это всегда возможность для лишней ошибки

Писать то , чего не понимаешь такое себе увлечение

Тоже самое, запись не создаётся

Когда пишешь код, должен же понимать зачем. Я думаю он копирует его себе

это не про решение твоей проблемы это про то как нужно писать

ты уверен что форма валидна ?

Выведи в шаблон ошибки в случае не валидности формы

preview_trailer Обязательное поле. trailer Обязательное поле.

На 100% нет,но не могу найти ошибку

по этому я могу сказать на 100% что не валидна

убери else: form = TrailerForm() и в шаблоне form.as_p и попробуй заполнить форму еще раз

Всё равно тоже самое

что именно все равно?

Не добавляется запись

у тебя, если ты это сделал, на странице должны появиться сообщения об ошибке, или ты не сделал или не внимательно смотришь

Пришли пасту снова. На этот раз одним файлом

Пишет "Форма валидна": Вот код: if request.method == 'POST': form = TrailerForm(request.POST) if form.is_valid(): return HttpResponse("Форма не валидна!") else: return HttpResponse("Форма валидна!") else: return HttpResponse("Форма не post") return render(request, 'polls/create_trailer.html', {'form': form})

else: return HttpResponse("Форма валидна!")

😂😂😂

а написать точно как попросили не пробовал?

https://pastebin.com/Y5fvxhNx

ну то есть ты не сделал ровно ничего из того что тебе сказали?) https://dpaste.org/obYL

Мне просто интересно, а что у тебя значит form, во время GET запроса?

Так я указал method="post"

Зачем строка 23?

Чтобы в create_trailer.html можно было добавить эту форму

Зачем тогда строка 22

Проверка,что форма с методом post

В строке 22 ты обрабатываешь не POST запрос. Что тогда в 23 строке. Ладно, неважно

Рендерю create_trailer.html.Чтобы в create_trailer.html можно было добавить эту форму

Сколько тебе лет?

16

Давай я тебе лучше книжку кину по джанго ? Русская . Начнёшь с азов

Ему нельзя, скоро тест

Времени нету

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Почему стало ломаться на D11? "739002.86400000' is not a valid timestamp" function IncDateTime(aStamp:TTimeStamp;aKind:TTriggerKind;aInterval:Integer):TDateTime; //aStamp = 2...
Катерина Свиридова
8
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
думаешь я не смогу также сделать? мне это просто не удобно
int 💳 𝙖𝙞𝙧 𝙗𝙞𝙜 𝙗𝙤𝙗 🔫 check bio / spam block / AFK / nohello.com / GMT+3
9
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Ребят, чет я уже не догоняю... Крч в коде на асм там происходит нечто вроде a+число (a+1, a+2 и т.д.). Но почему строка lea ecx, [edx+1] работает как a+1?? В edx берется адрес...
Alan 🔝 Бэброу
3
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
14
hi im a cs student. i need some advice from people who have enough experience in Embedded Software. I need to know whether this profession is suitable for me. I have watched s...
Sahand 🏔️
8
Карта сайта